2010-06-06 38 views
1

有沒有人有這種情況發生的想法?appendBezierPathWithGlyph在[NSBezierPath currentPoint]中失敗

GDB輸出:

0 .. 8: kill, abort, objc_exception_throw etc. 
9: 0x00007fff87ea21f4 in +[NSException raise:format:]() 
10: 0x00007fff8694e9e2 in -[NSBezierPath currentPoint]() 
11: 0x00007fff869e3b3b in __NSAppendBezierPathWithGlyphs() 
12: 0x00007fff869e5baf in -[NSBezierPath appendBezierPathWithGlyphs:count:inFont:]() 
13: 0x00007fff869e2e2d in -[NSBezierPath appendBezierPathWithGlyph:inFont:]() 

回答

1

objc_exception_throw是拋出一個異常的函數。在這種情況下需要注意以下兩點:控制檯日誌會識別異常本身,調用堆棧導致objc_exception_throw

在這種情況下,我可以猜出來自調用堆棧的異常:currentPoint將在路徑沒有當前點時拋出。這是由the documentation for the appendBezierPathWithGlyphs:count:inFont: method備份(以及for the method you're directly calling):

您必須設置路徑的當前點(使用moveToPoint:方法或通過建立前的直線或曲線段)調用此方法之前。

+0

謝謝!就是這樣:) – Schwitzgabel 2010-06-07 13:15:48