Question

I have a NSCollectionView which consist of some images.when mouse scroll over the NSCollectionView,in some case the app crash.So I enable Zombie Object and Malloc Stack.When app crash,-[_NSViewDrawOperation release]: message sent to deallocated instance 0x11ac815e0 is printed in the console.And I print the crash malloc using malloc_history.

(gdb) info malloc-history 0x11ac815e0
warning: MallocStackLoggingNoCompact not set in target's environment so the malloc history will not be available.
Alloc: Block address: 0x000000011ac815e0 length: 136
Stack - pthread: 0x7fff7981b960 number of frames: 46
    0: 0x7fff8e11136f in malloc_zone_calloc
    1: 0x7fff8e11215d in calloc
    2: 0x7fff8d3c2182 in CGClipStackCreateMutableCopy
    3: 0x7fff8d3c2140 in maybeCopyClipState
    4: 0x7fff8d3c45c3 in CGGStateClipToRect
    5: 0x7fff8d3c4583 in CGContextClipToRect
    6: 0x7fff8d46fca0 in CGContextClipToRects
    7: 0x7fff8eb0cde9 in -[NSView _drawRect:clip:]
    8: 0x7fff8eb3a49b in -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
    9: 0x7fff8eb0a8a9 in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
   10: 0x7fff8eb0bb5e in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
   11: 0x7fff8eb0bb5e in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
   12: 0x7fff8eb0bb5e in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
   13: 0x7fff8eb051bb in -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:]
   14: 0x7fff8eafdba1 in -[NSView displayIfNeeded]
   15: 0x7fff8eb02d9e in -[NSClipView _immediateScrollToPoint:]
   16: 0x7fff8eb01381 in -[NSClipView scrollToPoint:]
   17: 0x7fff8ebef25b in -[NSScrollView scrollClipView:toPoint:]
   18: 0x7fff8ebeeffe in -[NSClipView _scrollTo:animateScroll:flashScrollerKnobs:]
   19: 0x7fff8ebf1fd7 in -[NSClipView _scrollTo:animate:]
   20: 0x7fff8f22c876 in -[NSScrollView _doScroller:hitPart:multiplier:]
   21: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   22: 0x7fff8ebc48ca in -[NSApplication sendAction:to:from:]
   23: 0x7fff8ebc47fe in -[NSControl sendAction:to:]
   24: 0x7fff8f006586 in -[NSScroller sendAction:to:]
   25: 0x7fff8f007a3c in -[NSScroller(NSScrollerPrivate) _scrollByDelta:]
   26: 0x7fff8f22b4c9 in -[NSScrollView _smoothScrollWithEvent:]
   27: 0x7fff8f22a9f8 in -[NSScrollView scrollWheel:]
   28: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   29: 0x7fff8eb938ba in forwardMethod
   30: 0x7fff8f139127 in -[NSView scrollWheel:]
   31: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   32: 0x7fff8eb938ba in forwardMethod
   33: 0x7fff8f139127 in -[NSView scrollWheel:]
   34: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   35: 0x7fff8eb938ba in forwardMethod
   36: 0x7fff8f139127 in -[NSView scrollWheel:]
   37: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   38: 0x7fff8eb938ba in forwardMethod
   39: 0x7fff8f139127 in -[NSView scrollWheel:]
   40: 0x7fff8eb8e0fc in -[NSWindow sendEvent:]
   41: 0x7fff8eb26f74 in -[NSApplication sendEvent:]
   42: 0x7fff8eabda0e in -[NSApplication run]
   43: 0x7fff8ed39eac in NSApplicationMain
   44: 0x100002232 in main at /Users/goham/goham/XcodeApp/BookMark_130424_2112/BookMark/main.m:13
   45: 0x100002204 in start
Dealloc: Block address: 0x000000011ac815e0
Stack - pthread: 0x7fff7981b960 number of frames: 43
    0: 0x7fff8e11175a in free
    1: 0x7fff8d3b39c9 in CGGStateRelease
    2: 0x7fff8d3b3930 in CGGStackRestore
    3: 0x7fff8d3b3909 in CGContextRestoreGState
    4: 0x7fff8eb0d3f8 in -[NSView _drawRect:clip:]
    5: 0x7fff8eb3a49b in -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
    6: 0x7fff8eb0a8a9 in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
    7: 0x7fff8eb0bb5e in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
    8: 0x7fff8eb0bb5e in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
    9: 0x7fff8eb0bb5e in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
   10: 0x7fff8eb051bb in -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:]
   11: 0x7fff8eafdba1 in -[NSView displayIfNeeded]
   12: 0x7fff8eb02d9e in -[NSClipView _immediateScrollToPoint:]
   13: 0x7fff8eb01381 in -[NSClipView scrollToPoint:]
   14: 0x7fff8ebef25b in -[NSScrollView scrollClipView:toPoint:]
   15: 0x7fff8ebeeffe in -[NSClipView _scrollTo:animateScroll:flashScrollerKnobs:]
   16: 0x7fff8ebf1fd7 in -[NSClipView _scrollTo:animate:]
   17: 0x7fff8f22c876 in -[NSScrollView _doScroller:hitPart:multiplier:]
   18: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   19: 0x7fff8ebc48ca in -[NSApplication sendAction:to:from:]
   20: 0x7fff8ebc47fe in -[NSControl sendAction:to:]
   21: 0x7fff8f006586 in -[NSScroller sendAction:to:]
   22: 0x7fff8f007a3c in -[NSScroller(NSScrollerPrivate) _scrollByDelta:]
   23: 0x7fff8f22b4c9 in -[NSScrollView _smoothScrollWithEvent:]
   24: 0x7fff8f22a9f8 in -[NSScrollView scrollWheel:]
   25: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   26: 0x7fff8eb938ba in forwardMethod
   27: 0x7fff8f139127 in -[NSView scrollWheel:]
   28: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   29: 0x7fff8eb938ba in forwardMethod
   30: 0x7fff8f139127 in -[NSView scrollWheel:]
   31: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   32: 0x7fff8eb938ba in forwardMethod
   33: 0x7fff8f139127 in -[NSView scrollWheel:]
   34: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   35: 0x7fff8eb938ba in forwardMethod
   36: 0x7fff8f139127 in -[NSView scrollWheel:]
   37: 0x7fff8eb8e0fc in -[NSWindow sendEvent:]
   38: 0x7fff8eb26f74 in -[NSApplication sendEvent:]
   39: 0x7fff8eabda0e in -[NSApplication run]
   40: 0x7fff8ed39eac in NSApplicationMain
   41: 0x100002232 in main at /Users/goham/goham/XcodeApp/BookMark_130424_2112/BookMark/main.m:13
   42: 0x100002204 in start

Alloc: Block address: 0x000000011ac815e0 length: 96
Stack - pthread: 0x7fff7981b960 number of frames: 43
    0: 0x7fff8e11136f in malloc_zone_calloc
    1: 0x7fff8e11215d in calloc
    2: 0x7fff899040c5 in class_createInstance
    3: 0x7fff910d1ce7 in +[NSObject allocWithZone:]
    4: 0x7fff89904035 in _objc_rootAlloc
    5: 0x7fff8f24347a in -[_NSDisplayOperation queueDrawOperationForView:rect:rectSet:windowRegion:options:]
    6: 0x7fff8eb0af7f in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
    7: 0x7fff8eb0bb5e in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
    8: 0x7fff8eb0bb5e in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
    9: 0x7fff8eb0bb5e in -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
   10: 0x7fff8eb051bb in -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:]
   11: 0x7fff8eafdba1 in -[NSView displayIfNeeded]
   12: 0x7fff8eb02d9e in -[NSClipView _immediateScrollToPoint:]
   13: 0x7fff8eb01381 in -[NSClipView scrollToPoint:]
   14: 0x7fff8ebef25b in -[NSScrollView scrollClipView:toPoint:]
   15: 0x7fff8ebeeffe in -[NSClipView _scrollTo:animateScroll:flashScrollerKnobs:]
   16: 0x7fff8ebf1fd7 in -[NSClipView _scrollTo:animate:]
   17: 0x7fff8f22c876 in -[NSScrollView _doScroller:hitPart:multiplier:]
   18: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   19: 0x7fff8ebc48ca in -[NSApplication sendAction:to:from:]
   20: 0x7fff8ebc47fe in -[NSControl sendAction:to:]
   21: 0x7fff8f006586 in -[NSScroller sendAction:to:]
   22: 0x7fff8f007a3c in -[NSScroller(NSScrollerPrivate) _scrollByDelta:]
   23: 0x7fff8f22b4c9 in -[NSScrollView _smoothScrollWithEvent:]
   24: 0x7fff8f22a9f8 in -[NSScrollView scrollWheel:]
   25: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   26: 0x7fff8eb938ba in forwardMethod
   27: 0x7fff8f139127 in -[NSView scrollWheel:]
   28: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   29: 0x7fff8eb938ba in forwardMethod
   30: 0x7fff8f139127 in -[NSView scrollWheel:]
   31: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   32: 0x7fff8eb938ba in forwardMethod
   33: 0x7fff8f139127 in -[NSView scrollWheel:]
   34: 0x7fff9111c70d in -[NSObject performSelector:withObject:]
   35: 0x7fff8eb938ba in forwardMethod
   36: 0x7fff8f139127 in -[NSView scrollWheel:]
   37: 0x7fff8eb8e0fc in -[NSWindow sendEvent:]
   38: 0x7fff8eb26f74 in -[NSApplication sendEvent:]
   39: 0x7fff8eabda0e in -[NSApplication run]
   40: 0x7fff8ed39eac in NSApplicationMain
   41: 0x100002232 in main at /Users/goham/goham/XcodeApp/BookMark_130424_2112/BookMark/main.m:13
   42: 0x100002204 in start

But I don't still understand this.Any one could help me.Thank you!

Was it helpful?

Solution

In the NSImageView of the NSCollectionItem I selected this enter image description here

It caused the draw function be implemented in the second thread.People got this problem could try to deselect it,so the draw function was implemented in the main thread.Maybe it can help you.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top