bug-gnustep
[Top][All Lists]
Advanced

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

[bugs #6726] Segmentation fault from GSTest


From: Alexander Malmberg
Subject: [bugs #6726] Segmentation fault from GSTest
Date: Wed, 26 Nov 2003 10:34:58 -0500
User-agent: Mozilla/4.74 [en] (X11; U; Linux 2.0.36 i686)

This mail is an automated notification from the bugs tracker
 of the project: GNUstep.

/**************************************************************************/
[bugs #6726] Latest Modifications:

Changes by: 
                Alexander Malmberg <alexander@malmberg.org>
Date: nttWed 11/26/2003 at 16:34 (Europe/Stockholm)

            What     | Removed                   | Added
---------------------------------------------------------------------------
          Resolution | None                      | Fixed
              Status | Analyzed                  | Closed


------------------ Additional Follow-up Comments ----------------------------
Fixed in cvs.






/**************************************************************************/
[bugs #6726] Full Item Snapshot:

URL: <http://savannah.gnu.org/bugs/?func=detailitem&amp;item_id=6726>
Project: GNUstep
Submitted by: Fred Kiefer
On: Mon 11/24/2003 at 00:16

Category:  Gui/AppKit
Severity:  2
Item Group:  Bug
Resolution:  Fixed
Assigned to:  alexm
Status:  Closed


Summary:  Segmentation fault from GSTest

Original Submission:  I sometimes get the the fllowing execption from 
GSTest.app:

/usr/src/gnustep/usr-apps/examples/gui/GSTest/GSTest.app/GSTest: Uncaught 
exception NSInvalidArgumentException, reason: NSConstantString(instance) does 
not recognize setEnabled:

It is hard to reproduce but did show up rather often when testing the caps lock 
change. That is start GSTest, open the check input panel, type a key, switch on 
caps lock, press quit.

The gdb back trace was:
...
#12 0x4036e72b in +[NSException raise:format:] ()
   from /usr/GNUstep/System/Library/Libraries/libgnustep-base.so.1
#13 0x40391875 in -[NSObject doesNotRecognizeSelector:] ()
   from /usr/GNUstep/System/Library/Libraries/libgnustep-base.so.1
#14 0x40391a13 in -[NSObject forwardInvocation:] ()
   from /usr/GNUstep/System/Library/Libraries/libgnustep-base.so.1
#15 0x403ed7c7 in GSInvocationCallback ()
   from /usr/GNUstep/System/Library/Libraries/libgnustep-base.so.1
#16 0x4041a9fd in __vacall_r ()
   from /usr/GNUstep/System/Library/Libraries/libgnustep-base.so.1
#17 0x40498ee0 in ff_callback_map ()
   from /usr/GNUstep/System/Library/Libraries/libgnustep-base.so.1
#18 0xbfffdb04 in ?? ()
#19 0x00000004 in ?? ()
#20 0xbfffdb3c in ?? ()

And test where done on a SuSE 9.0 Linux system with todays GNUstep CVS sources.

Once I also did get this exception, but was not able to reproduce it again:
 Uncaught exception NSInvalidArgumentException, reason: 
GSCBufferString(instance) does not recognize resignKeyWindow


Follow-up Comments
------------------


-------------------------------------------------------
Date: Wed 11/26/2003 at 16:34       By: alexm
Fixed in cvs.

-------------------------------------------------------
Date: Wed 11/26/2003 at 02:29       By: alexm
Errors like that (random crashes, or clearly bogus message/receiver 
combinations) are generally caused by memory corruption, or freeing memory that 
is still in use. Zombies are useful when debugging.



In this case, the keyboard input test is releasing (and thus deallocating) its 
window while it's still key and main. NSApp keeps (unretained) references to 
these around, but doesn't clear them when the window is deallocated. Thus, when 
it later tries to send messages to them, Bad Things happen.



Fixed locally. I'll commit it tomorrow, once I decide whether to stick the new 
private method in NSApplication.h or GSGuiPrivate.h...














For detailed info, follow this link:
<http://savannah.gnu.org/bugs/?func=detailitem&amp;item_id=6726>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/





reply via email to

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