1

呼び出されたとき:

NSDictionary *dict = [NSKeyedUnarchiver unarchiveObjectWithData:dictData];


Program received signal SIGSEGV, Segmentation fault.
0x400c6844 in strcmp ()
from /Users/myname/.apportable/cache/devices/4dfcdd3168ea50fb/libs/libc.so

移植可能なライブラリのバグはありますか?

テストコード:

NSDictionary *dictionary = [[NSDictionary alloc]initWithObjectsAndKeys:[NSValue valueWithRange:NSMakeRange(0,16)],@"Archive_Version",[NSValue valueWithRange:NSMakeRange(16,0)],@"Clothes.txt",nil];

NSData *dictData = [NSKeyedArchiver archivedDataWithRootObject:dictionary];

[dictionary release];

NSDictionary *dict2 = [NSKeyedUnarchiver unarchiveObjectWithData:dictData];

無料版の Apportable を使用しています。コンソールでデバッグすると、結果は次のようになります。

(gdb) po 辞書 {Archive_Version = "{location=0, length=16}"; Clothing.txt = "{場所=16、長さ=0}"; }

(gdb) po dict2 {Archive_Version = "{location=-284, length=1588768934}"; Clothing.txt = "{場所=7、長さ=1593147632}"; }

ありがとう〜

4

1 に答える 1