bug-gnustep
[Top][All Lists]
Advanced

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

[bug #18321] -[GSXMLDocument setRoot:] causes a crash when using a node


From: Lon Varscsak
Subject: [bug #18321] -[GSXMLDocument setRoot:] causes a crash when using a node that already belongs to another document
Date: Fri, 17 Nov 2006 21:46:25 +0000
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.8) Gecko/20061025 Firefox/1.5.0.8

URL:
  <http://savannah.gnu.org/bugs/?18321>

                 Summary: -[GSXMLDocument setRoot:] causes a crash when using
a node that already belongs to another document
                 Project: GNUstep
            Submitted by: varscsak
            Submitted on: Friday 11/17/2006 at 21:46
                Category: Base/Foundation
                Severity: 3 - Normal
              Item Group: Bug
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open

    _______________________________________________________

Details:

If you try to create a new document, then call setRoot: with a node that
already belongs to another document, and then release the pool that the new
document belongs to, it will crash.

Take a really simple example:

NSAutoreleasPool *pool = [[NSAutoreleasePool alloc] init];
GSXMLParser *p = [GSXMLParser parserWithContentsOfFile:@"somefile.xml"];
GSXMLDocument *pDoc = [p document];
GSXMLNode *rootNode = [pDoc root];

//create a new document
GSXMLDocument *tempDocument = [GSXMLDocument documentWithVersion:@"1.0"];

//use our existing root node (although any node in the document causes the
same problem
[tempDocument setRoot:rootNode];

[pool release]; //this is where the crash happens

This is the message logged:

warning: HEAP[SomeProgram.exe]: 
warning: Invalid Address specified to RtlFreeHeap( 003D0000, 00AE67D9 )

Here is the backtrace:

#0  0x7c901231 in ntdll!DbgUiConnectToDbg () from ntdll.dll
#1  0x7c96c943 in ntdll!RtlpNtMakeTemporaryKey () from ntdll.dll
#2  0x0022fae4 in ?? ()
#3  0x7c96cd80 in ntdll!RtlpNtMakeTemporaryKey () from ntdll.dll
#4  0x00ae6981 in ?? ()
#5  0x003d0000 in ?? ()
#6  0x00ae6989 in ?? ()
#7  0x0022fb58 in ?? ()
#8  0x7c96df66 in ntdll!RtlpNtMakeTemporaryKey () from ntdll.dll
#9  0x003d0000 in ?? ()
#10 0x00ae6981 in ?? ()
#11 0x7c96e11c in ntdll!RtlpNtMakeTemporaryKey () from ntdll.dll
#12 0x003d0000 in ?? ()
#13 0x00ae6989 in ?? ()
#14 0x40000060 in ?? ()
#15 0xffffffff in ?? ()
#16 0x000001d0 in ?? ()
#17 0x00ae51e8 in ?? ()
#18 0x003d0000 in ?? ()
#19 0xffffffff in ?? ()
#20 0x7c96e0d4 in ntdll!RtlpNtMakeTemporaryKey () from ntdll.dll
#21 0x0101a5d0 in ?? ()
#22 0x0022fad8 in ?? ()
#23 0x50000061 in ?? ()
#24 0x000777f0 in ?? ()
#25 0x00ae6981 in ?? ()
#26 0x003d0000 in ?? ()
#27 0xffffffff in ?? ()
#28 0x7c96e0d4 in ntdll!RtlpNtMakeTemporaryKey () from ntdll.dll
#29 0x0001a5d0 in ?? ()
#30 0x0022faf8 in ?? ()
#31 0x50000061 in ?? ()
#32 0x0022fc30 in ?? ()
#33 0x7c90ee18 in strchr () from ntdll.dll
#34 0x7c96e0f8 in ntdll!RtlpNtMakeTemporaryKey () from ntdll.dll
#35 0x00000001 in ?? ()
#36 0x0022fc40 in ?? ()
#37 0x7c94a5d0 in ntdll!RtlInsertElementGenericTableAvl () from ntdll.dll
#38 0x003d0000 in ?? ()
#39 0x50000061 in ?? ()
#40 0x00ae6989 in ?? ()
#41 0x003d0000 in ?? ()
#42 0x00ae6989 in ?? ()
#43 0x40000060 in ?? ()
#44 0x7c96e0d4 in ntdll!RtlpNtMakeTemporaryKey () from ntdll.dll
#45 0x0101a5d0 in ?? ()
#46 0x0022fb38 in ?? ()
#47 0x50000061 in ?? ()
#48 0x0000fc70 in ?? ()
#49 0x7c90ee18 in strchr () from ntdll.dll
#50 0x0022fad4 in ?? ()
#51 0xffffffff in ?? ()
#52 0x0022fc68 in ?? ()
#53 0x7c90ee18 in strchr () from ntdll.dll
#54 0x7c926ac8 in ntdll!iswdigit () from ntdll.dll
#55 0xffffffff in ?? ()
#56 0x7c926abe in ntdll!iswdigit () from ntdll.dll
#57 0x7c9268ad in ntdll!iswdigit () from ntdll.dll
#58 0x00240000 in ?? ()
#59 0x40000060 in ?? ()
#60 0x003d0000 in ?? ()
#61 0x00244ce0 in ?? ()
#62 0x00244cc0 in ?? ()
#63 0x00ae5c48 in ?? ()
#64 0x003d0000 in ?? ()
#65 0xffffffff in ?? ()
#66 0x0000fca0 in ?? ()
#67 0x7c90ee18 in strchr () from ntdll.dll
#68 0x0022fb1c in ?? ()
#69 0xffffffff in ?? ()
#70 0x0000fcb0 in ?? ()
#71 0x7c90ee18 in strchr () from ntdll.dll
#72 0x003d0000 in ?? ()
#73 0xffffffff in ?? ()
#74 0x0022fcc0 in ?? ()
#75 0x7c90ee18 in strchr () from ntdll.dll
#76 0x7c926ac8 in ntdll!iswdigit () from ntdll.dll
#77 0xffffffff in ?? ()
#78 0x7c006abe in ?? ()
#79 0x7c9268ad in ntdll!iswdigit () from ntdll.dll
#80 0x003d0000 in ?? ()
#81 0x40000060 in ?? ()
#82 0x0022fce0 in ?? ()
#83 0x7c90ee18 in strchr () from ntdll.dll
#84 0x7c926ac8 in ntdll!iswdigit () from ntdll.dll
#85 0xffffffff in ?? ()
#86 0x7c006abe in ?? ()
#87 0x7c9268ad in ntdll!iswdigit () from ntdll.dll
#88 0x0022fb6c in ?? ()
#89 0x40000060 in ?? ()
#90 0x0022fd00 in ?? ()
#91 0x7c90ee18 in strchr () from ntdll.dll
#92 0x7c926ac8 in ntdll!iswdigit () from ntdll.dll
#93 0xffffffff in ?? ()
#94 0x0022fd10 in ?? ()
#95 0x7c9268ad in ntdll!iswdigit () from ntdll.dll
#96 0x003d0000 in ?? ()
#97 0x40000060 in ?? ()
#98 0x00ae6989 in ?? ()
#99 0x00000000 in ?? () from 
#100 0x00ae6989 in ?? ()
#101 0x00ae70b8 in ?? ()
#102 0x0022fbbc in ?? ()
#103 0x0022fc78 in ?? ()
#104 0x0022fc88 in ?? ()
#105 0x667b1fa9 in GSIMapBucketForKey (map=0xae6981, key={ptr = 0x3d0000,
cptr = 0x3d0000, str = 0x3d0000 "È", cstr = 0x3d0000 "È"}) at
../Headers/Additions/GNUstepBase/GSIMap.h:330






    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?18321>

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





reply via email to

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