gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Serious GORM bug


From: Fred Kiefer
Subject: Re: Serious GORM bug
Date: Sat, 28 Dec 2013 23:29:30 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0

I was not able to reproduce your problem on my system. Maybe more
detailed instructions would be helpful. What I noticed when looking at
your stack trace is that a lot of intermediate methods are left out
there. Which optimisation level are you using for your compiler when
compiling GNUstep gui?
You should also try to print out the event (po theEvent and p *theEvent)
and inspect the window given in the event. This should be the window the
event gets send to.

Could you please update your GNUstep installation to the latest release?
This makes it easier to compare the line numbers in the stack trace.

Fred

On 28.12.2013 22:30, Jamie Ramone wrote:
> What's common in both is self == nil (self=0x0) in NSWindow's -sendEvent
> method. While that doesn't seem right, nil is a valid receiver as far as
> the runtime's concerned. So I'n still unsure of the cause of the segfault.
> Let me know what you find Greg.
> 
> 
> On Sat, Dec 28, 2013 at 6:27 PM, Jamie Ramone <address@hidden> wrote:
> 
>> Here's the 2nd test:
>>
>> (gdb) file /SystemApps/Gorm.app/Gorm
>> Reading symbols from /SystemApps/Gorm.app/Gorm...done.
>> (gdb) r
>> Starting program: /SystemApps/Gorm.app/Gorm
>> [Thread debugging using libthread_db enabled]
>> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> -[NSWindow sendEvent:] (self=0x0, _cmd=<optimized out>, theEvent=0x10e59a0)
>>
>>     at NSWindow.m:4288
>> 4288    NSWindow.m: No such file or directory.
>> (gdb) bt
>> #0  -[NSWindow sendEvent:] (self=0x0, _cmd=<optimized out>,
>> theEvent=0x10e59a0)
>>
>>     at NSWindow.m:4288
>> #1  0x00007ffff7201e8c in -[GSDragView(Private) _handleDrag:slidePoint:] (
>>     self=0xad5c80, _cmd=<optimized out>, theEvent=0x1110160,
>> slidePoint=...)
>>     at GSDragView.m:720
>> #2  0x00007ffff71ffffe in -[GSDragView
>> dragImage:at:offset:event:pasteboard:source:slideBack:] (self=0xad5c80,
>> _cmd=<optimized out>, anImage=0x7b2300,
>>     screenLocation=..., initialOffset=..., event=0x8c7470,
>>     pboard=<optimized out>, sourceObject=0xd35030, slideFlag=1 '\001')
>>     at GSDragView.m:290
>> #3  0x00007ffff049b254 in -[XGDragView
>> dragImage:at:offset:event:pasteboard:source:slideBack:] (self=0xad5c80,
>> _cmd=<optimized out>, anImage=0x7b2300,
>>     screenLocation=..., initialOffset=..., event=0x8c7470,
>> pboard=0xc49240,
>>     sourceObject=0xd35030, slideFlag=1 '\001') at XGDragView.m:228
>> #4  0x00007ffff71d361a in -[NSWindow
>> dragImage:at:offset:event:pasteboard:source:slideBack:] (self=0xc40900,
>> _cmd=<optimized out>, anImage=0x7b2300,
>>     baseLocation=..., initialOffset=..., event=0x8c7470,
>>     pboard=<optimized out>, sourceObject=<optimized out>, slideFlag=1
>> '\001')
>>     at NSWindow.m:4548
>> #5  0x00007ffff71bd7a8 in -[NSView
>> dragImage:at:offset:event:pasteboard:source:slideBack:] (self=0xd35030,
>> _cmd=<optimized out>, anImage=0x7b2300,
>>     viewLocation=..., initialOffset=..., event=0x8c7470,
>>     pboard=<optimized out>, sourceObject=<optimized out>, slideFlag=1
>> '\001')
>>     at NSView.m:3858
>> #6  0x00007ffff7b3f569 in -[GormViewEditor
>> startConnectingObject:withEvent:] (
>>     self=0xd35030, _cmd=<optimized out>, anObject=<optimized out>,
>>     theEvent=0x8c7470) at GormViewEditor.m:1203
>> #7  0x00007ffff7b368b1 in -[GormScrollViewEditor mouseDown:]
>> (self=0xd35030,
>>     _cmd=<optimized out>, theEvent=0x8c7470) at GormScrollViewEditor.m:123
>> #8  0x00007ffff71df003 in -[NSWindow sendEvent:] (self=0xc40900,
>>     _cmd=<optimized out>, theEvent=0x8c7470) at NSWindow.m:3790
>> #9  0x00007ffff7052fc5 in -[NSApplication run] (self=0x8b99d0,
>>     _cmd=<optimized out>) at NSApplication.m:1562
>> #10 0x00007ffff7032945 in NSApplicationMain (argc=<optimized out>,
>>     argv=<optimized out>) at Functions.m:91
>> #11 0x00007ffff5ee676d in __libc_start_main ()
>>    from /lib/x86_64-linux-gnu/libc.so.6
>> #12 0x0000000000401965 in _start ()
>> (gdb)
>>
>> Same as before, but with a tableview in a new window, and making the
>> connection from it to NSOwner.
>>
>>
>> On Sat, Dec 28, 2013 at 6:19 PM, Jamie Ramone <address@hidden> wrote:
>>
>>> K, here's what I got:
>>>
>>> (gdb) file /SystemApps/Gorm.app/Gorm
>>> Reading symbols from /SystemApps/Gorm.app/Gorm...done.
>>> (gdb) r
>>> Starting program: /SystemApps/Gorm.app/Gorm
>>> [Thread debugging using libthread_db enabled]
>>> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
>>> 2013-12-28 18:09:25.880 Gorm[3541] File GSDictionary.m: 455. In
>>> -[GSMutableDictionary removeObjectForKey:] attempt to remove nil key from
>>> dictionary {}
>>>
>>> Program received signal SIGSEGV, Segmentation fault.
>>> -[NSWindow sendEvent:] (self=0x0, _cmd=<optimized out>, theEvent=0xb4bd20)
>>>     at NSWindow.m:4288
>>> 4288    NSWindow.m: No such file or directory.
>>> (gdb) bt
>>> #0  -[NSWindow sendEvent:] (self=0x0, _cmd=<optimized out>,
>>> theEvent=0xb4bd20)
>>>     at NSWindow.m:4288
>>> #1  0x00007ffff7201e8c in -[GSDragView(Private) _handleDrag:slidePoint:] (
>>>     self=0xc22440, _cmd=<optimized out>, theEvent=0xd52c80,
>>> slidePoint=...)
>>>     at GSDragView.m:720
>>> #2  0x00007ffff71ffffe in -[GSDragView
>>> dragImage:at:offset:event:pasteboard:source:slideBack:] (self=0xc22440,
>>> _cmd=<optimized out>, anImage=0x7b0fe0,
>>>     screenLocation=..., initialOffset=..., event=0xda00a0,
>>>     pboard=<optimized out>, sourceObject=0xcb8bc0, slideFlag=1 '\001')
>>>     at GSDragView.m:290
>>> #3  0x00007ffff049b254 in -[XGDragView
>>> dragImage:at:offset:event:pasteboard:source:slideBack:] (self=0xc22440,
>>> _cmd=<optimized out>, anImage=0x7b0fe0,
>>>     screenLocation=..., initialOffset=..., event=0xda00a0,
>>> pboard=0xd87800,
>>>     sourceObject=0xcb8bc0, slideFlag=1 '\001') at XGDragView.m:228
>>> #4  0x00007ffff71d361a in -[NSWindow
>>> dragImage:at:offset:event:pasteboard:source:slideBack:] (self=0xcab1a0,
>>> _cmd=<optimized out>, anImage=0x7b0fe0,
>>>     baseLocation=..., initialOffset=..., event=0xda00a0,
>>>     pboard=<optimized out>, sourceObject=<optimized out>, slideFlag=1
>>> '\001')
>>>     at NSWindow.m:4548
>>> #5  0x00007ffff71bd7a8 in -[NSView
>>> dragImage:at:offset:event:pasteboard:source:slideBack:] (self=0xcb8bc0,
>>> _cmd=<optimized out>, anImage=0x7b0fe0,
>>>     viewLocation=..., initialOffset=..., event=0xda00a0,
>>>     pboard=<optimized out>, sourceObject=<optimized out>, slideFlag=1
>>> '\001')
>>> ---Type <return> to continue, or q <return> to quit---
>>>     at NSView.m:3858
>>> #6  0x00007ffff7b2983c in -[GormObjectEditor mouseDown:] (self=0xcb8bc0,
>>>     _cmd=<optimized out>, theEvent=0xda00a0) at GormObjectEditor.m:481
>>> #7  0x00007ffff71df003 in -[NSWindow sendEvent:] (self=0xcab1a0,
>>>     _cmd=<optimized out>, theEvent=0xda00a0) at NSWindow.m:3790
>>> #8  0x00007ffff7052fc5 in -[NSApplication run] (self=0x8b99d0,
>>>     _cmd=<optimized out>) at NSApplication.m:1562
>>> #9  0x00007ffff7032945 in NSApplicationMain (argc=<optimized out>,
>>>     argv=<optimized out>) at Functions.m:91
>>> #10 0x00007ffff5ee676d in __libc_start_main ()
>>>    from /lib/x86_64-linux-gnu/libc.so.6
>>> #11 0x0000000000401965 in _start ()
>>> (gdb)
>>>
>>> For this I started out with an empty document (Document>New Module>New
>>> Empty), added a window and attempted to make a connection from the window
>>> to NSOwner, within the document window. Next I'll try between a control and
>>> NSOwner.
>>>
>>>
>>> On Sat, Dec 28, 2013 at 4:52 PM, Gregory Casamento <
>>> address@hidden> wrote:
>>>
>>>> Gorm shouldn't require anything in the new runtime.  I've tried creating
>>>> connections between several objects in the document window.  I can't seem
>>>> to reproduce this issue.
>>>>
>>>> Could you run in GDB and provide me a backtrace?  I will continue to
>>>> test things here to see if I can reproduce the issue.
>>>>
>>>> Greg
>>>>
>>>>
>>>> On Sat, Dec 28, 2013 at 1:40 PM, Jamie Ramone <address@hidden>wrote:
>>>>
>>>>> Thanx man! Oh just a plus: I don't use the new language runtime
>>>>> (libobjc 2). Also, I found that connecting FROM an object in the document
>>>>> window TO a control on a window seems to work fine.
>>>>>
>>>>>
>>>>> On Sat, Dec 28, 2013 at 10:19 AM, Gregory Casamento <
>>>>> address@hidden> wrote:
>>>>>
>>>>>> No, nothing more needed I'll check it out thanks.
>>>>>>
>>>>>>
>>>>>> On Friday, December 27, 2013, Jamie Ramone wrote:
>>>>>>
>>>>>>>  Well, I'm on an Ubuntu 12.04 system, my computer is a 64bit AMD
>>>>>>> Phemon (6 processors), I recently recompiled GNUstep from scratch 
>>>>>>> because
>>>>>>> the entire system died (not sure what caused it but the UI never came 
>>>>>>> back
>>>>>>> so I had to reinstall the system). Also, I'm using WindowMaker as unity 
>>>>>>> has
>>>>>>> pretty much...inflamed my gonads by now. I avoid the prebuilt ubuntu 
>>>>>>> like a
>>>>>>> lepper in the middle ages, everyting is compiled by me here. GNUstep, 
>>>>>>> GORM,
>>>>>>> Project Center, the whole sh'bang. Anything else you need to know?
>>>>>>>
>>>>>>> --
>>>>>>> ¡Besos, abrazos, confetti y aplausos!
>>>>>>> Jamie "El Vikingo" Ramone
>>>>>>>
>>>>>>> On Fri, Dec 27, 2013 at 6:24 PM, Gregory Casamento <
>>>>>>> address@hidden> wrote:
>>>>>>>
>>>>>>>> Hey Jamie,
>>>>>>>>
>>>>>>>> Could you give us some information about your environment?
>>>>>>>>
>>>>>>>> Greg
>>>>>>>>
>>>>>>>> On Dec 27, 2013, at 4:11 PM, Jamie Ramone <address@hidden>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Hi there steppers! OK, here's the deal: I'v been playing around
>>>>>>>> with GORM making a demo of an extended scroll view (a subclass of
>>>>>>>> NSScrollView with some practical general purpose extensions) and I came
>>>>>>>> across a connection-related bug in GORM. Apparently, (manually) 
>>>>>>>> connecting
>>>>>>>> any object to any object in the document window makes GORM barf with a
>>>>>>>> segfault. Connecting objects inside of a window, panel, or menu (i.e.
>>>>>>>> belonging to the document but NOT dropping the conection icon in the
>>>>>>>> document window but rather in one of there) seems to work fine, though 
>>>>>>>> I
>>>>>>>> haven't tested this extensively. I believe I have the most recent 
>>>>>>>> version
>>>>>>>> and haven't seen any notice of new versions since building this one. 
>>>>>>>> The
>>>>>>>> specific version is 1.2.17. And as far as the GNUstep libs I'm using 
>>>>>>>> the
>>>>>>>> previous version and GORM is linked against them. This bug is a total 
>>>>>>>> show
>>>>>>>> stopper for me and, if anyone else is affected, I believe it would be 
>>>>>>>> for
>>>>>>>> them as well. Greg, could you please look into this? Thanx!




reply via email to

[Prev in Thread] Current Thread [Next in Thread]