GNOME Bugzilla – Bug 622505
Entering any number in zoom combobox causes crash
Last modified: 2012-03-23 15:05:00 UTC
AppName: gimp-2.6.exe Offset: 00325589 OS: Windows XP Pro RU SP3 Problem first occurs with version 2.6.8.
Does the problem occur if you make a clean GIMP 2.6.9 install, without any old files from older GIMP builds?
I removed "GIMP" directory in "Program Files" and ".gimp-2.6" in home folder and reinstalled GIMP but problem persists. P.S. Martin, ty 4 lightning-fast response :)
Can you give us the stack trace with http://code.google.com/p/jrfonseca/wiki/DrMingw please? P.S. You're welcome :)
I could not find win32-related instruction on how to install debug info. http://pastebin.com/EBsiF63u from release version; doubt it helps much
Debug symbols should come with the installer. Are they not there? ender: Did you remove debug symbols? :(
No, GIMP 2.6.8 and 2.6.9 aren't stripped. hitxarvlphmae: can you try the experimental 2.6.9 installer (under Additional packages on <http://gimp-win.sourceforge.net/stable.html>) to see if this still happens (that installer contains a newer GTK+ version).
Experimental 2.6.9 also crashed when I tried manually entering zoom factor. Mouse input seems OK in all versions.
Please try this version (which includes additional debug information): http://eternallybored.org/misc/gimp/gimp-2.6.9-debug-setup.exe
outfrom from drmingw gimp-2.6.exe caused an Illegal Instruction at location 00728099 in module gimp-2.6.exe. Registers: eax=00000000 ebx=00000000 ecx=00000001 edx=0073fe48 esi=00000002 edi=00000010 eip=00728099 esp=0022eef0 ebp=0000002b iopl=0 nv up ei ng nz na pe cy cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00200283 Call stack: 00728099 gimp-2.6.exe:00728099
Created attachment 164473 [details] output from windbg
I can't reproduce this with 2.6.9. Locale-dependent number format issue?
I tried japanese and english format (by Regional and Language Options) with the same result. I can change image size by "+/-" and drop-down list. When i type "qwert", or "фывап", or "@#$", or "0" (zero) value just resets back. But typing any number except zero causes crash.
p.s. i mean "entering any number"
Could this not be the old Delphi problem again? hitxarvlphmae, how "clean" is the machine? Do you have much "useful" 3rd-party desktop enhancements or similar software installed?
Tor Lillqvist: I have none of that useless stuff :) GIMP 2.6.7 works nearly perfect
It's not simply locale-dependant - I tried setting everything to Russian in Regional and Language Options, and couldn't reproduce the crash. Also, that Delphi issue wouldn't cause Illegal instruction, but a floating-point exception. Joe: what CPU do you have?
BTW, could this be related to bug 606247 ? Does GIMP also crash if you try setting a fixed aspect ratio for rectangular select?
I reported 606247. With an image open for editing, I pick View | Zoom | Other from the menus, right? I can enter numbers in all three combo boxes in the "Zoom Ratio" dialog box. Gimp doesn't crash.
@Jernej Simončič >BTW, could this be related to bug 606247 ? Does GIMP also crash if you try setting a fixed aspect ratio for rectangular select? Yea, can confirm "gimp-2.6.exe caused an Illegal Instruction at location 63ac7349 in module libgimpwidgets-2.0-0.dll" And furthermore, GIMP crashed when I press Tab after clicking on Zoom. gimp-2.6.exe caused an Illegal Instruction at location 00728099 in module gimp-2.6.exe. Registers: eax=00000000 ebx=00000000 ecx=00000003 edx=0073fe48 esi=00000064 edi=00000010 eip=00728099 esp=0022f2c0 ebp=ffffffe2 iopl=0 nv up ei ng nz na po cy cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00200287 Call stack: 00728099 gimp-2.6.exe:00728099 @Mike Sherrill >View | Zoom | Other from the menus, right? Nop, I'm talking about widget in the statusbar.
@Jernej Simončič >what CPU do you have? Sempron 2200+ :)
I ran GIMP 2.7.1 under the debugger and found out where it went wrong after entering 1 in the combobox. Unfortunately, I'm not very familiar with assembler, but peace of code looks weird. Look at address 0077DD24. Is it right to use "qword"? It seems, it's gimp_scale_combo_box_changed (?) function (considering сhecking for a positive number) with some inline code ("localeconv" & "strlen" calls etc.).
Created attachment 164981 [details] disassembled erroneous code
Created attachment 164982 [details] execution tracing
Since this might be a corrupted locale problem, can you try this: go to Regional and Language options on Control Panel, change to another locale (doesn't matter which one), then back to your preferred locale, and check if the crash still happens.
>change to another locale (doesn't matter which one), then back to your preferred locale I tried many times
*** Bug 627270 has been marked as a duplicate of this bug. ***
Same problem with 2.6.11 App crashes with "illegal instruction" movq qword ptr ss:[esp+0B8], xmm0 within gimp-2.6.exe (and libgimpwidgets-2.0-0.dll => bug 606247) in the following instruction set movd xmm0, esi ; here is zoom factor, i.e 0x00000064 (100%) cmp dword ptr ss:[esp+64], 10 movq qword ptr ss:[esp+0B8], xmm0 ; <<< illegal instruction cmovle edi, dword ptr ss:[esp+64] fild qword ptr ss:[esp+0B8] Operand size mismatch? Unsupported SIMD instructions?
It may be interesting that this bug is gone in Partha's unofficial 2.7.2 build http://www.partha.com/downloads/gimp-2.7.2.zip Also no crash on setting aspect ratio (bug 606247) with that build. So what it was? GIMP/GTK+ bug, compiler issue or what?
Jernej, the last two comments have an analysis at assembly level - anything you can add here?
I'm writing just to confirm this bug, I've tried on two different MS Windows XP sp3 machines, and Gimp 2.6.11 crashes when: - a value is entered in the zoom combo box - a value of a fixed aspect ratio is entered in the rectangular selection tool, or in the crop tool - when one press tab after zooming. If it can be useful, I'll try to obtain an error stack. Stefano
Please try GIMP 2.7.4 and report back, we won't fix 2.6 bugs any longer.
Seems GIMP 2.6.12 (gimp-2.6.12-i686-setup-2.exe) is working fine now :) ty
Thanks Joe