[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #27311] Keyed archiving related exceptions with NSScrollView
From: |
Quentin Mathé |
Subject: |
[bug #27311] Keyed archiving related exceptions with NSScrollView |
Date: |
Mon, 24 Aug 2009 16:32:43 +0000 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko/2009033100 Ubuntu/9.04 (jaunty) Firefox/3.0.8 |
URL:
<http://savannah.gnu.org/bugs/?27311>
Summary: Keyed archiving related exceptions with
NSScrollView
Project: GNUstep
Submitted by: qmathe
Submitted on: Mon 24 Aug 2009 04:32:42 PM GMT
Category: Gui/AppKit
Severity: 3 - Normal
Item Group: None
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
_______________________________________________________
Details:
Base and Gui r28524 - Ubuntu 9.04 x86 - GCC 4.3.3
To serialize a scroll view with NSKeyedArchiver doesn't seem to work well
when this view was loaded from a gorm file. The crash doesn't happen
immediately but a bit later.
I attached a test app that shows the problem.
When you run the test app, no exception is logged. However when the same test
app is run inside GDB with a breakpoint on -[NSException raise], GDB stops on
an exception.
NSArchiver appears to work fine as no exception can be detected with or
without GDB.
The code that leads to the crash is:
[NSKeyedArchiver archivedDataWithRootObject: scrollView]
If I create a simple scroll view with [[NSScrollView alloc] initWithFrame:]
and tries to serialize it, GDB breaks on -[NSKeyedUnarchiver
unarchiveObjectWithData:] rather than on the archiving phase as described
previously. So the issue doesn't seem to be only related to the nib/gorm
loading.
Here is the test app stack trace:
2009-08-24 15:50:56.439 Test[21969] Try unarchiving: <NSScrollView:
0x91ea3c8>
[Switching to Thread 0xb73b28d0 (LWP 21969)]
Breakpoint 1, -[NSException raise] (self=0x91e43c0, _cmd=0xb7afaa60)
at NSException.m:835
835 if (_reserved == 0)
(gdb) bt
#0 -[NSException raise] (self=0x91e43c0, _cmd=0xb7afaa60) at
NSException.m:835
#1 0xb7964181 in +[NSException raise:format:arguments:] (self=0xb7afa840,
_cmd=0xb7afaa48, name=0xb7afa600, format=0xb7b1a6d8, argList=0xbff63c20
"")
at NSException.m:785
#2 0xb79640be in +[NSException raise:format:] (self=0xb7afa840,
_cmd=0xb7b1b048,
name=0xb7afa600, format=0xb7b1a6d8) at NSException.m:771
#3 0xb79df3d0 in -[BinaryPLGenerator markOffset:for:] (self=0x91e0ff8,
_cmd=0xb7b1b2d0, offset=2157, object=0x918aba0) at NSPropertyList.m:3226
#4 0xb79e1154 in -[BinaryPLGenerator storeObject:] (self=0x91e0ff8,
_cmd=0xb7b1b250,
object=0x918aba0) at NSPropertyList.m:3741
#5 0xb79df265 in -[BinaryPLGenerator writeObjects] (self=0x91e0ff8,
_cmd=0xb7b1b310)
at NSPropertyList.m:3209
#6 0xb79e1464 in -[BinaryPLGenerator generate] (self=0x91e0ff8,
_cmd=0xb7b1b240)
at NSPropertyList.m:3784
#7 0xb79decdb in +[BinaryPLGenerator serializePropertyList:intoData:] (
self=0xb7b1aa80, _cmd=0xb7b1b150, aPropertyList=0x91e0620,
destination=0x91e0730)
at NSPropertyList.m:3132
#8 0xb79db110 in +[NSPropertyListSerialization
dataFromPropertyList:format:errorDescription:] (self=0xb7b1ace0,
_cmd=0xb7b04048, aPropertyList=0x91e0620, aFormat=200,
anErrorString=0xbff63e40) at NSPropertyList.m:2251
#9 0xb7981d62 in -[NSKeyedArchiver finishEncoding] (self=0x9136d58,
_cmd=0xb7b03f80)
at NSKeyedArchiver.m:804
#10 0xb797ecd1 in +[NSKeyedArchiver archivedDataWithRootObject:]
(self=0xb7b03da0,
_cmd=0x804aba0, anObject=0x92620c8) at NSKeyedArchiver.m:450
#11 0x08048aeb in -[Controller applicationDidFinishLaunching:]
(self=0x90ee648,
_cmd=0xb7e6e018, notif=0x91ea300) at Controller.m:16
#12 0xb799cf49 in -[NSNotificationCenter _postAndRelease:] (self=0x8efafc8,
_cmd=0xb7b0afc8, notification=0x91ea300) at NSNotificationCenter.m:1161
#13 0xb799d86b in -[NSNotificationCenter
postNotificationName:object:userInfo:] (
self=0x8efafc8, _cmd=0xb7b0afd0, name=0xb7f16a60, object=0x8ff6ab0,
info=0x0)
at NSNotificationCenter.m:1220
#14 0xb799d722 in -[NSNotificationCenter postNotificationName:object:]
(self=0x8efafc8,
_cmd=0xb7e6db00, name=0xb7f16a60, object=0x8ff6ab0) at
NSNotificationCenter.m:1200
#15 0xb7c1b05c in -[NSApplication _didFinishLaunching] (self=0x8ff6ab0,
_cmd=0xb7e6dc88)
at NSApplication.m:1139
#16 0xb7c1c3b7 in -[NSApplication run] (self=0x8ff6ab0, _cmd=0xb7e63040)
at NSApplication.m:1456
#17 0xb7bfbbbd in NSApplicationMain (argc=1, argv=0xbff64564) at
Functions.m:74
#18 0x08048c2e in main (argc=Cannot access memory at address 0x1b0004
) at main.m:13
Quentin.
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Mon 24 Aug 2009 04:32:42 PM GMT Name:
KeyedArchiverTableViewTest.tar.gz Size: 40kB By: qmathe
<http://savannah.gnu.org/bugs/download.php?file_id=18635>
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?27311>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
- [bug #27311] Keyed archiving related exceptions with NSScrollView,
Quentin Mathé <=