#1105 new
Matt Gray

Repeatable crash when toggling Markdown preview pane

Reported by Matt Gray | April 17th, 2015 @ 02:57 AM

MailMate crashes when toggling the preview pane for a certain Markdown text message.

Steps

  1. Create a new message draft, no recipient or subject

  2. Paste in the following text exactly, making it the entirety of the message:

    Ad 16 Non 2015, eu 16:35, Amet Deserunt lorem:
    
    > Est Quis - amet a occaeceat esse non duis commodo 
    > nisi non tempor velit deserunt dolore ullamco 
    > mollit fugiat...
    
    Hi Quis! Tempor non non qui deserunt; I esse commodo qui dolore nisi I non qui mollit in fugiat:
    
    >> ## Quis in magna
    >> Ad mollit incidunt quis dolor tempor esse; qui 
    >> non in non ipsum proident.
    >>
    >> * Labore qui irure laboris
    >> * Minim (**aliqua in qui magna eiusmod in dolor 
    >> excepteur**)
    >> * SED culpa veniam
    >> * Dolor dolore
    >>
    >> Et amet quis qui elit ut laborum (a.a., irure 
    >> proident qui quis labore)!
    
    Dolor sed qui exercitation qui qui non proident!
    
    --
    Quis
    
  3. Select "Markdown" from the message format options (assuming Plan Text is the default)

  4. In the View menu, choose Layout and Show Preview (assuming it was hidden by default)

  5. Note that the preview pane doesn't refresh immediately when it appears

  6. Add a trivial space after the name in the signature to force the preview to update

  7. In the View menu, choose Layout and Hide Preview

  8. MailMate crashes hard.

Expected Result

MailMate should not crash when toggling the visibility of the preview pane.

Actual Result

Hard crash:

4/16/15 9:53:47.556 PM MailMate[13143]: !!! _NSLayoutTreeLineFragmentRectForGlyphAtIndex invalid glyph index 647  
Process:               MailMate [13143]  
Path:                  /Applications/MailMate.app/Contents/MacOS/MailMate  
Identifier:            com.freron.MailMate  
Version:               1.9.1 (5086)  
Code Type:             X86-64 (Native)  
Parent Process:        ??? [1]  
Responsible:           MailMate [13143]  
User ID:               501

Date/Time:             2015-04-16 21:53:47.567 -0500  
OS Version:            Mac OS X 10.10.3 (14D131)  
Report Version:        11  
Anonymous UUID:        962BE33B-8DE5-A6C8-0758-8AC99577B6B2

Sleep/Wake UUID:       2A133E04-07F5-450C-BF3F-ABDC72417C5E

Time Awake Since Boot: 36000 seconds  
Time Since Wake:       2600 seconds

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_CRASH (SIGABRT)  
Exception Codes:       0x0000000000000000, 0x0000000000000000

Application Specific Information:  
Performing @selector(toggleView:) from sender NSMenuItem 0x6080004a6540  
abort() called

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread  
0   libsystem_kernel.dylib          0x00007fff92f72286 __pthread_kill + 10  
1   libsystem_c.dylib               0x00007fff8c4d8b53 abort + 129  
2   com.freron.MailMate             0x0000000101228319 -[OakExceptionHandlerDelegate exceptionHandler:shouldLogException:mask:] + 457  
3   com.apple.ExceptionHandling     0x00007fff891d9e63 -[NSExceptionHandler _handleException:mask:] + 167  
4   com.apple.ExceptionHandling     0x00007fff891d9aef NSExceptionHandlerExceptionRaiser + 196  
5   libobjc.A.dylib                 0x00007fff9268b76e objc_exception_throw + 43  
6   com.apple.CoreFoundation        0x00007fff96fc5eed +[NSException raise:format:] + 205  
7   com.apple.UIFoundation          0x00007fff8c610b74 _NSBlockNumberForIndex + 84  
8   com.apple.UIFoundation          0x00007fff8c61bfc9 -[NSLayoutManager(NSPrivate) _rectArrayForRange:withinSelectionRange:rangeIsCharRange:singleRectOnly:fullLineRectsOnly:inTextContainer:rectCount:rangeWithinContainer:glyphsDrawOutsideLines:rectArray:rectArrayCapacity:] + 1732  
9   com.apple.UIFoundation          0x00007fff8c61f056 -[NSLayoutManager(NSPrivate) _rectArrayForRange:withinSelectionRange:rangeIsCharRange:singleRectOnly:fullLineRectsOnly:inTextContainer:rectCount:rangeWithinContainer:glyphsDrawOutsideLines:] + 99  
10  com.apple.UIFoundation          0x00007fff8c61f0e2 -[NSLayoutManager(NSPrivate) _boundingRectForGlyphRange:inTextContainer:fast:fullLineRectsOnly:] + 133  
11  com.apple.UIFoundation          0x00007fff8c56f5f9 -[NSLayoutManager boundingRectForGlyphRange:inTextContainer:] + 60  
12  com.apple.AppKit                0x00007fff8b9d6490 -[NSTextView(NSPrivate) _setFrameSize:forceScroll:] + 1145  
13  com.apple.AppKit                0x00007fff8b915083 -[NSView setFrame:] + 464  
14  com.apple.AppKit                0x00007fff8b98148f -[NSView resizeWithOldSuperviewSize:] + 1206  
15  com.apple.AppKit                0x00007fff8b97fbdc -[NSView resizeSubviewsWithOldSize:] + 317  
16  com.apple.AppKit                0x00007fff8b915f01 -[NSView setFrameSize:] + 1633  
17  com.apple.AppKit                0x00007fff8b9c216c -[NSClipView setFrameSize:] + 380  
18  com.apple.AppKit                0x00007fff8b915083 -[NSView setFrame:] + 464  
19  com.apple.AppKit                0x00007fff8b9c1b6f -[NSScrollView _setContentViewFrame:] + 660  
20  com.apple.AppKit                0x00007fff8b9c1297 -[NSScrollView _applyContentAreaLayout:] + 811  
21  com.apple.AppKit                0x00007fff8b9bfdb6 -[NSScrollView tile] + 2978  
22  com.apple.AppKit                0x00007fff8b9bf179 -[NSScrollView _tileWithoutRecursing] + 51  
23  com.apple.AppKit                0x00007fff8b9bf0f8 -[NSScrollView _update] + 27  
24  com.apple.AppKit                0x00007fff8b915f01 -[NSView setFrameSize:] + 1633  
25  com.apple.AppKit                0x00007fff8b9c7d7e -[NSScrollView setFrameSize:] + 835  
26  com.apple.AppKit                0x00007fff8b915083 -[NSView setFrame:] + 464  
27  com.apple.AppKit                0x00007fff8b98148f -[NSView resizeWithOldSuperviewSize:] + 1206  
28  com.apple.AppKit                0x00007fff8b97fbdc -[NSView resizeSubviewsWithOldSize:] + 317  
29  com.apple.AppKit                0x00007fff8b915f01 -[NSView setFrameSize:] + 1633  
30  com.apple.AppKit                0x00007fff8b915083 -[NSView setFrame:] + 464  
31  com.apple.AppKit                0x00007fff8b98148f -[NSView resizeWithOldSuperviewSize:] + 1206  
32  com.apple.AppKit                0x00007fff8b97fbdc -[NSView resizeSubviewsWithOldSize:] + 317  
33  com.apple.AppKit                0x00007fff8b915f01 -[NSView setFrameSize:] + 1633  
34  com.apple.AppKit                0x00007fff8b915083 -[NSView setFrame:] + 464  
35  com.apple.AppKit                0x00007fff8b98148f -[NSView resizeWithOldSuperviewSize:] + 1206  
36  com.apple.AppKit                0x00007fff8b97fbdc -[NSView resizeSubviewsWithOldSize:] + 317  
37  com.apple.AppKit                0x00007fff8b915f01 -[NSView setFrameSize:] + 1633  
38  com.apple.AppKit                0x00007fff8bbe5cee -[NSBox setFrameSize:] + 87  
39  com.apple.AppKit                0x00007fff8b915083 -[NSView setFrame:] + 464  
40  com.freron.MailMate             0x00000001012bf562 -[MmSplitViewController setFrameStates:] + 297  
41  com.freron.MailMate             0x00000001012beefc -[MmSplitViewController updateDisplayedSubviews] + 947  
42  com.freron.MailMate             0x00000001012c97d0 -[MmViewController(ToggleMessageView) toggleView] + 72  
43  com.freron.MailMate             0x00000001012d9bb2 -[MmWindowController performSelector:withObject:] + 134  
44  libsystem_trace.dylib           0x00007fff894b1cd7 _os_activity_initiate + 75  
45  com.apple.AppKit                0x00007fff8bb0bfb1 -[NSApplication sendAction:to:from:] + 452  
46  com.apple.AppKit                0x00007fff8bb0bd4e -[NSMenuItem _corePerformAction] + 382  
47  com.apple.AppKit                0x00007fff8bb0ba7c -[NSCarbonMenuImpl performActionWithHighlightingForItemAtIndex:] + 114  
48  libsystem_trace.dylib           0x00007fff894b1cd7 _os_activity_initiate + 75  
49  com.apple.AppKit                0x00007fff8bbd2c10 -[NSMenu performActionForItemAtIndex:] + 131  
50  com.apple.AppKit                0x00007fff8bbd2b76 -[NSMenu _internalPerformActionForItemAtIndex:] + 35  
51  com.apple.AppKit                0x00007fff8bbd29c2 -[NSCarbonMenuImpl _carbonCommandProcessEvent:handlerCallRef:] + 107  
52  com.apple.AppKit                0x00007fff8baf3e6b NSSLMMenuEventHandler + 724  
53  com.apple.HIToolbox             0x00007fff8e0d6b6c DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 1260  
54  com.apple.HIToolbox             0x00007fff8e0d5fae SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 386  
55  com.apple.HIToolbox             0x00007fff8e0ebcb6 SendEventToEventTarget + 40  
56  com.apple.HIToolbox             0x00007fff8e125f45 SendHICommandEvent(unsigned int, HICommand const*, unsigned int, unsigned int, unsigned char, void const*, OpaqueEventTargetRef*, OpaqueEventTargetRef*, OpaqueEventRef**) + 428  
57  com.apple.HIToolbox             0x00007fff8e163b8d SendMenuCommandWithContextAndModifiers + 59  
58  com.apple.HIToolbox             0x00007fff8e163b30 SendMenuItemSelectedEvent + 188  
59  com.apple.HIToolbox             0x00007fff8e163a09 FinishMenuSelection(SelectionData*, MenuResult*, MenuResult*) + 96  
60  com.apple.HIToolbox             0x00007fff8e164481 MenuSelectCore(MenuData*, Point, double, unsigned int, OpaqueMenuRef**, unsigned short*) + 702  
61  com.apple.HIToolbox             0x00007fff8e1640fe _HandleMenuSelection2 + 446  
62  com.apple.AppKit                0x00007fff8ba11de0 _NSHandleCarbonMenuEvent + 277  
63  com.apple.AppKit                0x00007fff8b948d0d _DPSNextEvent + 1828  
64  com.apple.AppKit                0x00007fff8b947f68 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 346  
65  com.apple.AppKit                0x00007fff8b93dbf3 -[NSApplication run] + 594  
66  com.apple.AppKit                0x00007fff8b8ba354 NSApplicationMain + 1832  
67  com.freron.MailMate             0x0000000101234a7f main + 552  
68  com.freron.MailMate             0x000000010121c6e4 start + 52  
[...]

No comments found

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.

New-ticket Create new ticket

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป

Mac OS X email client.

Shared Ticket Bins

People watching this ticket

Tags

Pages