Version: 2.5.0 (using KDE 4.7.4) OS: MS Windows After closing the configure dialog ("Configure digiKam..."), the application will freeze. It's always, independent from the used button ("Ok" or "Cancel"). Reproducible: Always Steps to Reproduce: Open the configure dialog and then close it. Actual Results: Application will freeze/crash. Expected Results: No freeze/crash.
We need a backtrace to hack code. Gilles Caulier
Hi Deep-Sea, To do a backtrace on Windows, open a command prompt and change directory (cd) to where you installed digikam (probably c:\Program Files\digikam or c:\Program Files (x86)\digikam) then cd into 'bin'. Then do the following: Type gdb digikam and press 'Enter' Once gdb launches type the following, changing the path to the log file as desired: gdb digikam set logging file c:\Temp\digikam.txt set logging on set disable-address-randomization off run After digikam crashes, do this: bt quit Then attach your backtrace (the log file) to this bug report.
Created attachment 67584 [details] gdb output
I used the official Windows installer from sourceforge (digiKam-installer-2.5.0-win32.exe). It don't contents gdb, but i downloaded it separately. The line "set disable-address-randomization off" will cause the error "No symbol table is loaded. Use the "file" command.". Is this a problem? When digiKam freezes, i have to kill it using the Windows Task-Manager. Before it was not possible to type something into the gdb console. Then the command "bt" says "No stack.". I posted the gdb output anyway.
(In reply to comment #4) > I used the official Windows installer from sourceforge > (digiKam-installer-2.5.0-win32.exe). It don't contents gdb, but i downloaded it > separately. It does have it, but no matter. The one you downloaded should be fine. > The line "set disable-address-randomization off" will cause the error "No > symbol table is loaded. Use the "file" command.". Is this a problem? No, it isn't a problem. The command just tells gdb to allow address randomization so that if the crash occurs because of a race condition when not debugging then it is more likely to crash while debugging (sometimes a crash will not occur while debugging because gdb will turn off address randomization so behavior will be different). > When digiKam freezes, i have to kill it using the Windows Task-Manager. Before > it was not possible to type something into the gdb console. Then the command > "bt" says "No stack.". How long do you wait before you kill it? If digiKam actually crashed gdb would inform you and then you can type 'bt'. If you can't type 'bt' then it hasn't crashed yet and digiKam is simply waiting for something to happen, but it hasn't crashed. If you kill it in the task manager, there is no stack because the program is gone! You must wait until gdb informs you that there was a crash (gdb will give a message like "Program received signal SIGSEGV, Segmentation fault" or similar) and then you can type 'bt'. This could take quite a few minutes. Also, during all of this does your hard drive have high disk-activity? Does it say "Scanning collection0%" at the bottom-left of digiKam's main window?
It will be fine to run debugview before to run digiKam: http://technet.microsoft.com/en-us/sysinternals/bb896647 ...and to see what's printed by application on the system console before to crash. Gilles Caulier
To check the questions and use debugview, I do new tests. At the first test, digiKam don't freeze! And I don't know why, I have change nothing. But at the second test, all was like before. > How long do you wait before you kill it? A few minutes at the old test. 30 Minutes at the second test. But then I press Ctrl + C at the gdb console and can type "bt" (and "quit"). The output: [New Thread 412.0x16a8] Program received signal SIGINT, Interrupt. [Switching to Thread 412.0x16a8] 0x76e3e37d in KERNEL32!FormatMessageW () from C:\Windows\system32\kernel32.dll #0 0x76e3e37d in KERNEL32!FormatMessageW () from C:\Windows\system32\kernel32.dll #1 0x76e0ed6c in KERNEL32!AcquireSRWLockExclusive () from C:\Windows\system32\kernel32.dll #2 0x773437f5 in ntdll!RtlInsertElementGenericTableAvl () from C:\Windows\system32\ntdll.dll #3 0x773437c8 in ntdll!RtlInsertElementGenericTableAvl () from C:\Windows\system32\ntdll.dll #4 0x00000000 in ?? () A debugging session is active. Inferior 1 [process 412] will be killed. Quit anyway? (y or n) > Also, during all of this does your hard drive have high disk-activity? No. > Does it say "Scanning collection0%" at the bottom-left of digiKam's main window? No. debugview shows no new entries after digiKam was started. Do you want the complete log file anyway?
To see digiKam trace from debugview, run kdebugdialog and turn on digiKam debug space. Gilles Caulier
digiKam is activated in the kdebugdialog. And debugview has traced some events. But nothing after the start of digiKam was finished. Or what do you mean?
Official digiKam 2.6.0 release is out since few days now : http://www.digikam.org/drupal/node/656 Please, check if this entry still valid, or update report accordingly. Thanks in advance. Gilles Caulier
I will check this immediately when a Windows version of the 2.6.0 is available. I'm waiting for it since month :-)
I have checked out the 2.6.0 and the problem seems to be fixed.