Bug 195905 - Kleo crashes if import certificate
Summary: Kleo crashes if import certificate
Status: RESOLVED FIXED
Alias: None
Product: kleopatra
Classification: Applications
Component: general (show other bugs)
Version: 2.0.8
Platform: unspecified Microsoft Windows
: NOR crash
Target Milestone: ---
Assignee: Marc Mutz
URL:
Keywords:
: 197458 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-06-10 17:23 UTC by Emanuel Schütze
Modified: 2009-06-26 10:56 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
screenshot or error dialog (8.21 KB, image/png)
2009-06-10 17:24 UTC, Emanuel Schütze
Details
kleo log file (1.06 KB, text/plain)
2009-06-10 17:25 UTC, Emanuel Schütze
Details
backtrace (648 bytes, text/plain)
2009-06-10 17:36 UTC, Emanuel Schütze
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Emanuel Schütze 2009-06-10 17:23:54 UTC
Version:           2.0.8 (using 4.1)
Compiler:          gcc
OS:                MS Windows

Start Kleopatra and import a certificate file (x.509 or openpgp).
-> error: "assertion failed" (see attached screenshot and kleo-log file)
-> Kleo crahes.

Tested with Gpg4win-1.9.17-svn1169 + kdesupport-20090610-dbus4win-* packages.
Comment 1 Emanuel Schütze 2009-06-10 17:24:57 UTC
Created attachment 34408 [details]
screenshot or error dialog
Comment 2 Emanuel Schütze 2009-06-10 17:25:28 UTC
Created attachment 34409 [details]
kleo log file
Comment 3 Emanuel Schütze 2009-06-10 17:36:08 UTC
Created attachment 34410 [details]
backtrace
Comment 4 Dario Andres 2009-06-10 19:46:00 UTC
Pasted backtrace from comment 3:
---

(gdb) bt
#0  0x7c91120f in ntdll!DbgUiConnectToDbg ()
   from C:\WINDOWS\system32\ntdll.dll
#1  0x7c960010 in ntdll!KiIntSystemCall () from C:\WINDOWS\system32\ntdll.dll
#2  0x00000005 in ?? ()
#3  0x00000004 in ?? ()
#4  0x00000001 in ?? ()
#5  0x0048ffd0 in Kleo::Crypto::EncryptEMailTask::setOutput (this=0xffffffff,
    output=@0x7c91e900)
    at /tmp/builder-home/src/kdepim/kleopatra/crypto/encryptemailtask.cpp:138
#6  0x00200008 in ?? ()
#7  0xffffffff in ?? ()
#8  0x7c91e900 in strchr () from C:\WINDOWS\system32\ntdll.dll
#9  0x7c960030 in ntdll!KiIntSystemCall () from C:\WINDOWS\system32\ntdll.dll
#10 0x00000000 in ?? ()
Comment 5 Emanuel Schütze 2009-06-17 20:33:04 UTC
New Test with new packages:
Gpg4win-1.9.17-svn1172 (contains kdesupport-20090610-dbus4win) 
+ new packages of kdelibs (r982666) 
+ new packages of kleopatra (kdepim r983131).

Test:
-> Install gpg4win
-> Open Kleopatra
-> Crash!

Backtrace:
(gdb) run
Starting program: C:\Programme\GNU\GnuPG\bin/kleopatra.exe
[New thread 1044.0xc4]
warning: Debug:Statup timing: 40 ms elapsed: Command line args created

[New thread 1044.0x5f0]
warning: Debug:Startup timing: 3906 ms elapsed: Application created

warning: Debug:Startup timing: 4196 ms elapsed: UiServer created

warning: Debug:Startup timing: 5308 ms elapsed: UiServer started

[New thread 1044.0x51c]
[New thread 1044.0x614]
[New thread 1044.0x53c]
[New thread 1044.0x294]
[New thread 1044.0x7bc]
warning: HEAP[kleopatra.exe]:
warning: Invalid Address specified to RtlFreeHeap( 088B0000, 709FD390 )


Program received signal SIGTRAP, Trace/breakpoint trap.
0x7c91120f in ntdll!DbgUiConnectToDbg () from C:\WINDOWS\system32\ntdll.dll
(gdb) bt
#0  0x7c91120f in ntdll!DbgUiConnectToDbg ()
   from C:\WINDOWS\system32\ntdll.dll
#1  0x7c97c201 in ntdll!RtlpNtMakeTemporaryKey ()
   from C:\WINDOWS\system32\ntdll.dll
#2  0x7c97c63e in ntdll!RtlpNtMakeTemporaryKey ()
   from C:\WINDOWS\system32\ntdll.dll
#3  0x7c97d826 in ntdll!RtlpNtMakeTemporaryKey ()
   from C:\WINDOWS\system32\ntdll.dll
#4  0x7c959e1c in ntdll!LdrFindEntryForAddress ()
   from C:\WINDOWS\system32\ntdll.dll
#5  0x088b0000 in ?? ()
#6  0x50000061 in ?? ()
#7  0x709fd390 in __gnu_cxx::__pool_alloc<wchar_t>::_S_force_new ()
   from c:\Programme\GNU\GnuPG\libgpgme++.dll
#8  0x088b0000 in ?? ()
#9  0x709fd390 in __gnu_cxx::__pool_alloc<wchar_t>::_S_force_new ()
   from c:\Programme\GNU\GnuPG\libgpgme++.dll
#10 0x40000060 in ?? ()
#11 0x0022c8e4 in ?? ()
#12 0x00000000 in ?? ()
Comment 6 Emanuel Schütze 2009-06-19 06:44:58 UTC
New Test with new packages:
Gpg4win-2.0.0-svn1175 (contains kdesupport-20090612-dbus4win) 
+ new packages of kdelibs (r983638) 
+ new packages of kleopatra (kdepim r983638).

Test:
-> Install gpg4win
-> Open Kleopatra
-> Import certificate from file
-> Crash with "assertion failed" message (see screenshot of comment#1)

Backtrace:
(gdb) attach 1880
A program is being debugged already.  Kill it? (y or n) y

error return win32-nat.c:1953 was 5
error return win32-nat.c:1151 was 31
Attaching to program `C:\Programme\GNU\GnuPG\bin/kleopatra.exe', process 1880
[New thread 1880.0x60c]
[New thread 1880.0x194]
Symbols already loaded for C:\WINDOWS\system32\ntdll.dll
Symbols already loaded for C:\WINDOWS\system32\kernel32.dll
Symbols already loaded for C:\WINDOWS\system32\msvcrt.dll
Symbols already loaded for C:\WINDOWS\system32\apphelp.dll
Symbols already loaded for C:\WINDOWS\system32\advapi32.dll
Symbols already loaded for C:\WINDOWS\system32\rpcrt4.dll
Symbols already loaded for C:\WINDOWS\system32\secur32.dll
[Switching to thread 1880.0x194]
(gdb) bt
#0  0x7c91120f in ntdll!DbgUiConnectToDbg ()
   from C:\WINDOWS\system32\ntdll.dll
#1  0x7c960010 in ntdll!KiIntSystemCall () from C:\WINDOWS\system32\ntdll.dll
#2  0x00000005 in ?? ()
#3  0x00000004 in ?? ()
#4  0x00000001 in ?? ()
#5  0x004affd0 in Kleo::Crypto::Gui::Wizard::qt_metacall (this=0xffffffff,
    _c=2089937152, _id=2090205232, _a=0x0)
    at /tmp/builder-home/build/kdepim/kleopatra/moc_wizard.cpp:71
#6  0x00080246 in ?? ()
#7  0xffffffff in ?? ()
#8  0x7c91e900 in strchr () from C:\WINDOWS\system32\ntdll.dll
#9  0x7c960030 in ntdll!KiIntSystemCall () from C:\WINDOWS\system32\ntdll.dll
#10 0x00000000 in ?? ()
(gdb)
Comment 7 Marc Mutz 2009-06-19 14:02:37 UTC
Fixed in enterprise4 rev's 983772, 983776, 983778, 983785.
The problem that we didn't call gpgme_check_version() and recent versions of gpgme error out on gpgme_new() now when check_version() was never called.
This needs to be backported to just about everything.. 3.5, e3, trunk, 4.2, 4.3, otherwise the next gpgme update of the distribution breaks all kdepim crypto.
Comment 8 Thomas McGuire 2009-06-22 10:52:16 UTC
*** Bug 197458 has been marked as a duplicate of this bug. ***
Comment 9 Allen Winter 2009-06-25 01:11:50 UTC
SVN commit 986745 by winterz:

provide an interface called initializeLibrary() for gpgme_check_version().

should close the backporting needed for bug 195905, according to Marc.
MERGE: e35
CCBUG: 195905
CCMAIL: mutz@kde.org



 M  +1 -1      Makefile.am  
 M  +4 -0      context.cpp  
 M  +2 -0      context.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=986745
Comment 10 Allen Winter 2009-06-25 14:27:29 UTC
SVN commit 987046 by winterz:

use GgpME::initializeLibrary(), per Marc.
MERGE: e35
CCBUG: 195905
CCMAIL: mutz@kde.org



 M  +1 -1      qgpgmebackend.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=987046
Comment 11 Emanuel Schütze 2009-06-26 10:25:03 UTC
resolved with gpg4win 2.0.0-rc1
Comment 12 Thomas McGuire 2009-06-26 10:56:22 UTC
Fixed in all branches now, I'll drop a mail to kde-packager soon.