Bug 53585 - libkabc install a signal handler, making KMail not to save mail during a crash
Summary: libkabc install a signal handler, making KMail not to save mail during a crash
Status: RESOLVED UNMAINTAINED
Alias: None
Product: kab3
Classification: Miscellaneous
Component: general (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR grave
Target Milestone: ---
Assignee: Tobias Koenig
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-01-29 15:14 UTC by Lubos Lunak
Modified: 2009-08-05 15:48 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Lubos Lunak 2003-01-29 15:14:05 UTC
Version:            (using KDE KDE 3.1)
Installed from:    SuSE RPMs

This is actually a libkabc problem, but it has no bugs.kde.org product, so I hope reporting it as kaddressbook problem is ok.

Start KMail, start writing a new mail. After you've written a long mail, do 'killall kmail' (i.e. KMail has just "crashed"). Start new KMail, and the unfinished mail is not saved (and somebody owes my boss that mail :( ). This used to work in KDE3.0. The reason for this is that libkabc seems to install its own signal handlers, thus replacing KMail ones doing the save.

 This is WRONG. A library should never override app's signal handler for things like SIGTERM. I don't know why libkabc needs the sighandler, but if it needs it, it should make the cleanup function part of a public API and let the apps disable the sighandler and call the cleanup function in their handler, or some other similar solution. (BTW the code with the signal handler seems to be in kdelibs/kabc/stdaddressbook.cpp.)

 Please don't forget backporting this to KDE_3_1_BRANCH.
Comment 1 Tobias Koenig 2003-02-02 00:28:43 UTC
Hi Lubos, 
 
thank you very much for this hint, it is fixed in cvs head now and 
backported to 3.1 branch 
Comment 2 Tobias Koenig 2009-08-05 15:48:48 UTC
The development of the old KAddressBook will be discontinued for KDE 4.4.
Since the new application has the same name, but a completly new code base we close all bug reports against the old version and ask the submitters to resend there reports against the new product.