Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FontForge 2019-08-01 / Mac OS X (10.14.6) Crashes #3877

Closed
1 of 8 tasks
MrBenGriffin opened this issue Aug 15, 2019 · 17 comments
Closed
1 of 8 tasks

FontForge 2019-08-01 / Mac OS X (10.14.6) Crashes #3877

MrBenGriffin opened this issue Aug 15, 2019 · 17 comments

Comments

@MrBenGriffin
Copy link

I've shared several console logs on fontforge-devel@lists.sourceforge.net
My initial thought was this was to do with libPango, but it looks like it may be to do with something else..

I notice that warning dialogs which are behind other windows are sometimes not rendering - and in many ways the window focus is not working properly.

I also notice that the crashes appear to only kick in with complex files - but when they crash, they crash pretty quickly. I'm willing to help resolve the issue - but I do not have the time to build the entire code-chain sorry.

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libglib-2.0.0.dylib 0x00000001068ca92c g_slice_alloc + 92
1 libpango-1.0.0.dylib 0x00000001063c7954 pango_font_description_copy_static + 24
2 libpangocairo-1.0.0.dylib 0x00000001063b0c80 pango_core_text_fontset_key_init + 354
3 libpangocairo-1.0.0.dylib 0x00000001063b09ca pango_core_text_font_map_load_fontset + 224
4 libpango-1.0.0.dylib 0x00000001063cd229 itemize_state_process_run + 440

But....
fontforge(21589,0x116efb5c0) malloc: Incorrect checksum for freed object 0x7fd03176fbf0: probably modified after being freed.
Corrupt value: 0xb00007fd00000026

2 libsystem_c.dylib 0x00007fff7dba96a6 abort + 127
3 libsystem_malloc.dylib 0x00007fff7dcb816b malloc_vreport + 545
4 libsystem_malloc.dylib 0x00007fff7dcd0f01 malloc_zone_error + 183
5 libsystem_malloc.dylib 0x00007fff7dcb4947 tiny_free_list_remove_ptr + 544
6 libsystem_malloc.dylib 0x00007fff7dcb2318 tiny_free_no_lock + 934
7 libsystem_malloc.dylib 0x00007fff7dcb1e75 free_tiny + 480
8 libfontforgeexe.3.dylib 0x000000010cc7ecb3 WordlistEscapedInputStringToParsedDataComplex + 1091
9 libfontforgeexe.3.dylib 0x000000010cc7f3f8 WordlistEscapedInputStringToParsedData + 40
10 libfontforgeexe.3.dylib 0x000000010ca59d1a CV_OnCharSelectorTextChanged + 602
11 libfontforgeexe.3.dylib 0x000000010ca58ad6 CVChangeSC + 2822
12 libfontforgeexe.3.dylib 0x000000010cb5528e FVMouse + 846
13 libfontforgeexe.3.dylib 0x000000010cb5317e v_e_h + 398
14 libgdraw.6.dylib 0x000000010ce646f8 _GWidget_Container_eh + 3048

And...
Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [21643]

0 libobjc.A.dylib 0x00007fff7c32869d objc_msgSend + 29
1 com.apple.AppKit 0x00007fff4f4f5033 -[NSApplication(NSWindowCache) _removeWindowFromCache:] + 176
2 com.apple.AppKit 0x00007fff4f4f4eb4 -[NSApplication _removeWindow:] + 453
3 com.apple.AppKit 0x00007fff4fb40a7e -[NSWindow _finishClosingWindow] + 602
4 com.apple.AppKit 0x00007fff4f5d9671 -[NSWindow _close] + 364
5 libgdk-3.0.dylib 0x000000010598b021 gdk_quartz_window_destroy + 369
6 libgdk-3.0.dylib 0x0000000105966e78 _gdk_window_destroy_hierarchy + 1112
7 libgdk-3.0.dylib 0x0000000105966f64 gdk_window_destroy + 20
8 libgdraw.6.dylib 0x0000000104b81348 _GGDKDraw_OnWindowDestroyed + 312
9 libglib-2.0.0.dylib 0x0000000105f102b8 g_timeout_dispatch + 24
10 libglib-2.0.0.dylib 0x0000000105f13956 g_main_context_dispatch + 310

And...
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 com.apple.CoreGraphics 0x00007fff52000a50 RIPLayerRelease + 13
1 com.apple.CoreGraphics 0x00007fff51ff6bcb ripc_GetClipState + 399
2 com.apple.CoreGraphics 0x00007fff51ff6662 ripc_GetRenderingState + 150
3 com.apple.CoreGraphics 0x00007fff51ff648d ripc_DrawRects + 80
4 com.apple.AppKit 0x00007fff4f4650d1 __backing_store_DrawRects_block_invoke + 39
5 com.apple.AppKit 0x00007fff4f464460 backing_store_delegate + 893
6 com.apple.AppKit 0x00007fff4f78031a backing_store_DrawRects.llvm.1485844590212887067 + 907
7 com.apple.CoreGraphics 0x00007fff51ff63ae CGContextFillRects + 96
8 com.apple.CoreGraphics 0x00007fff51ff6347 CGContextFillRect + 105
9 com.apple.AppKit 0x00007fff4f384768 NSRectFill + 237
10 com.apple.AppKit 0x00007fff4f463e98 -[NSThemeFrame _drawTransparentTitlebarInRect:] + 78
11 com.apple.AppKit 0x00007fff4f463da9 -[NSThemeFrame _drawUnifiedToolbar:] + 154
12 com.apple.AppKit 0x00007fff4f463baa -[NSThemeFrame _drawTitleBar:] + 83
13 com.apple.AppKit 0x00007fff4f463b4c -[NSThemeFrame _drawFrameInterior:clip:] + 66
14 com.apple.AppKit 0x00007fff4f463ab8 -[NSThemeFrame drawFrame:] + 806
15 com.apple.AppKit 0x00007fff4f463670 -[NSFrameView drawRect:] + 703
16 com.apple.AppKit 0x00007fff4f4633af -[NSThemeFrame drawRect:] + 203
17 com.apple.AppKit 0x00007fff4f38441e _NSViewDrawRect + 66
18 com.apple.AppKit 0x00007fff4f36f25e -[NSView _drawRect:clip:] + 1752
19 com.apple.AppKit 0x00007fff4f36d1e1 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 5165
20 com.apple.AppKit 0x00007fff4f36bd8e -[NSThemeFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 65
21 com.apple.AppKit 0x00007fff4f369690 -[NSView _oldDisplayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 1893
22 com.apple.AppKit 0x00007fff4f368cc9 -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 253
23 com.apple.AppKit 0x00007fff4f3658be -[NSView displayIfNeeded] + 1302
24 com.apple.AppKit 0x00007fff4f3625ff -[NSWindow displayIfNeeded] + 280
25 com.apple.AppKit 0x00007fff4f362440 __NSWindowGetDisplayCycleObserverForDisplay_block_invoke + 684
26 com.apple.AppKit 0x00007fff4f35d534 NSDisplayCycleObserverInvoke + 162
27 com.apple.AppKit 0x00007fff4f35d0b4 NSDisplayCycleFlush + 1030
28 com.apple.QuartzCore 0x00007fff5c643003 CA::Transaction::run_commit_handlers(CATransactionPhase) + 49
29 com.apple.QuartzCore 0x00007fff5c64274b CA::Transaction::commit() + 213
30 com.apple.AppKit 0x00007fff4f35ca4d __65+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayRefresh]_block_invoke + 274
31 com.apple.CoreFoundation 0x00007fff51c33928 CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 23
32 com.apple.CoreFoundation 0x00007fff51c3385d __CFRunLoopDoObservers + 451
33 com.apple.CoreFoundation 0x00007fff51bd5f80 __CFRunLoopRun + 1136
34 com.apple.CoreFoundation 0x00007fff51bd58be CFRunLoopRunSpecific + 455
35 com.apple.HIToolbox 0x00007fff50ec196b RunCurrentEventLoopInMode + 292
36 com.apple.HIToolbox 0x00007fff50ec15ad ReceiveNextEventCommon + 355
37 com.apple.HIToolbox 0x00007fff50ec1436 _BlockUntilNextEventMatchingListInModeWithFilter + 64
38 com.apple.AppKit 0x00007fff4f25b987 _DPSNextEvent + 965
39 com.apple.AppKit 0x00007fff4f25a71f -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1361
40 libgdk-3.0.dylib 0x000000010cf9fffc poll_func + 172
41 libglib-2.0.0.dylib 0x000000010d53ac37 g_main_context_iterate + 343
42 libglib-2.0.0.dylib 0x000000010d53ad14 g_main_context_iteration + 100

And...
0 com.apple.CoreGraphics 0x00007fff2d27ef88 CGFontStrikeGetValue + 88
1 com.apple.CoreGraphics 0x00007fff2d27ebf0 CGGlyphBuilder::lock_glyph_bitmaps(CGGlyphIdentifier const*, unsigned long, CGGlyphBitmap const**) + 118
2 com.apple.CoreGraphics 0x00007fff2d27ea40 render_glyphs + 184
3 com.apple.CoreGraphics 0x00007fff2d27e243 draw_glyph_bitmaps + 1093
4 com.apple.CoreGraphics 0x00007fff2d27dd70 ripc_DrawGlyphs + 1451
5 com.apple.CoreGraphics 0x00007fff2d27d42f CGContextDelegateDrawGlyphs + 906
6 com.apple.CoreGraphics 0x00007fff2d2ae530 dle_ExecuteDisplayList + 4204
7 com.apple.CoreGraphics 0x00007fff2d2acf7d dle_Execute + 328
8 com.apple.CoreGraphics 0x00007fff2d2acb44 CGDisplayListDrawInContextDelegate + 489
9 com.apple.AppKit 0x00007fff2a581569 -[NSTextLayer drawLayer:inContext:] + 330
10 com.apple.QuartzCore 0x00007fff378b1577 -[CALayer drawInContext:] + 281
11 com.apple.QuartzCore 0x00007fff3789de02 CABackingStoreUpdate_ + 577
12 com.apple.QuartzCore 0x00007fff378ffa0d invocation function for block in CA::Layer::display_() + 53
13 com.apple.QuartzCore 0x00007fff3789db75 x_blame_allocations + 81
14 com.apple.QuartzCore 0x00007fff3789d020 -[CALayer _display] + 1830
15 com.apple.AppKit 0x00007fff2a53d74e _NSBackingLayerDisplay + 528
16 com.apple.QuartzCore 0x00007fff3789c551 CA::Layer::display_if_needed(CA::Transaction*) + 627
17 com.apple.QuartzCore 0x00007fff3788a7c6 CA::Context::commit_transaction(CA::Transaction*) + 342
18 com.apple.QuartzCore 0x00007fff37889ea6 CA::Transaction::commit() + 596
19 com.apple.AppKit 0x00007fff2a51884d __65+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayRefresh]_block_invoke + 274
20 com.apple.CoreFoundation 0x00007fff2ce7df28 CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 23
21 com.apple.CoreFoundation 0x00007fff2ce7de5d __CFRunLoopDoObservers + 451
22 com.apple.CoreFoundation 0x00007fff2ce20580 __CFRunLoopRun + 1136
23 com.apple.CoreFoundation 0x00007fff2ce1febe CFRunLoopRunSpecific + 455
24 com.apple.HIToolbox 0x00007fff2c07f1ab RunCurrentEventLoopInMode + 292
25 com.apple.HIToolbox 0x00007fff2c07eded ReceiveNextEventCommon + 355
26 com.apple.HIToolbox 0x00007fff2c07ec76 _BlockUntilNextEventMatchingListInModeWithFilter + 64
27 com.apple.AppKit 0x00007fff2a41779d _DPSNextEvent + 1135
28 com.apple.AppKit 0x00007fff2a41648b -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1361
29 libgdk-3.0.dylib 0x000000010d351ffc poll_func + 172
30 libglib-2.0.0.dylib 0x000000010d8e4c37 g_main_context_iterate + 343
31 libglib-2.0.0.dylib 0x000000010d8e4d14 g_main_context_iteration + 100

*..and..
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libobjc.A.dylib 0x00007fff5759a69d objc_msgSend + 29
1 com.apple.CoreGraphics 0x00007fff2d23abdf assert_check_region + 30
2 com.apple.CoreGraphics 0x00007fff2d2596e3 CGRegionCreateUnionWithRegion + 28
3 com.apple.CoreGraphics 0x00007fff2d2596bb CGSUnionRegion + 14
4 com.apple.AppKit 0x00007fff2a620f25 -[_NSCGSWindowBackingStore dirtyBackBufferInRegion:] + 64
5 com.apple.AppKit 0x00007fff2a6202aa backing_store_delegate + 967
6 com.apple.AppKit 0x00007fff2a93c1e2 backing_store_DrawRects.llvm.2329424099933660171 + 907
7 com.apple.CoreGraphics 0x00007fff2d2411f2 CGContextFillRects + 96
8 com.apple.CoreGraphics 0x00007fff2d24118b CGContextFillRect + 105
9 com.apple.AppKit 0x00007fff2a540568 NSRectFill + 237
10 com.apple.AppKit 0x00007fff2a61fc98 -[NSThemeFrame _drawTransparentTitlebarInRect:] + 78
11 com.apple.AppKit 0x00007fff2a61fba9 -[NSThemeFrame _drawUnifiedToolbar:] + 154
12 com.apple.AppKit 0x00007fff2a61f9aa -[NSThemeFrame _drawTitleBar:] + 83
13 com.apple.AppKit 0x00007fff2a61f94c -[NSThemeFrame _drawFrameInterior:clip:] + 66
14 com.apple.AppKit 0x00007fff2a61f8b8 -[NSThemeFrame drawFrame:] + 806
15 com.apple.AppKit 0x00007fff2a61f470 -[NSFrameView drawRect:] + 703
16 com.apple.AppKit 0x00007fff2a61f1af -[NSThemeFrame drawRect:] + 203
17 com.apple.AppKit 0x00007fff2a54021e _NSViewDrawRect + 66
18 com.apple.AppKit 0x00007fff2a52b05e -[NSView _drawRect:clip:] + 1752
19 com.apple.AppKit 0x00007fff2a528fe1 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 5165
20 com.apple.AppKit 0x00007fff2a527b8e -[NSThemeFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 65
21 com.apple.AppKit 0x00007fff2a525490 -[NSView _oldDisplayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 1893
22 com.apple.AppKit 0x00007fff2a524ac9 -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 253
23 com.apple.AppKit 0x00007fff2a5216be -[NSView displayIfNeeded] + 1302
24 com.apple.AppKit 0x00007fff2a51e3ff -[NSWindow displayIfNeeded] + 280
25 com.apple.AppKit 0x00007fff2a51e240 __NSWindowGetDisplayCycleObserverForDisplay_block_invoke + 684
26 com.apple.AppKit 0x00007fff2a519334 NSDisplayCycleObserverInvoke + 162
27 com.apple.AppKit 0x00007fff2a518eb4 NSDisplayCycleFlush + 1030
28 com.apple.QuartzCore 0x00007fff3788a54d CA::Transaction::run_commit_handlers(CATransactionPhase) + 49
29 com.apple.QuartzCore 0x00007fff37889d26 CA::Transaction::commit() + 212
30 com.apple.AppKit 0x00007fff2a51884d __65+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayRefresh]_block_invoke + 274
31 com.apple.CoreFoundation 0x00007fff2ce7df28 CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 23
32 com.apple.CoreFoundation 0x00007fff2ce7de5d __CFRunLoopDoObservers + 451
33 com.apple.CoreFoundation 0x00007fff2ce20580 __CFRunLoopRun + 1136
34 com.apple.CoreFoundation 0x00007fff2ce1febe CFRunLoopRunSpecific + 455
35 com.apple.HIToolbox 0x00007fff2c07f1ab RunCurrentEventLoopInMode + 292
36 com.apple.HIToolbox 0x00007fff2c07eded ReceiveNextEventCommon + 355
37 com.apple.HIToolbox 0x00007fff2c07ec76 _BlockUntilNextEventMatchingListInModeWithFilter + 64
38 com.apple.AppKit 0x00007fff2a41779d _DPSNextEvent + 1135
39 com.apple.AppKit 0x00007fff2a41648b -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1361
40 libgdk-3.0.dylib 0x0000000104c34ffc poll_func + 172
41 libglib-2.0.0.dylib 0x00000001051d5c37 g_main_context_iterate + 343

Important

Mark with [x] to select. Leave as [ ] to unselect.

When reporting a bug/issue:

  • Screenshot
  • The FontForge version and the operating system you're using
  • The behavior you expect to see, and the actual behavior
  • Steps to reproduce the behavior
  • (optional) Possible solution/fix/workaround

When you open an issue for a change/improvement/feature request:

  • A description of the problem you're trying to solve, including why you think this is a problem
  • If the feature changes current behavior, reasons why your solution is better
  • (optional) Possible solution/fix/workaround
@jtanx
Copy link
Contributor

jtanx commented Aug 15, 2019

Have you tried running the latest package from https://dl.bintray.com/fontforge/fontforge?

@MrBenGriffin
Copy link
Author

MrBenGriffin commented Aug 15, 2019 via email

@jtanx
Copy link
Contributor

jtanx commented Aug 26, 2019

ping

@MrBenGriffin
Copy link
Author

MrBenGriffin commented Aug 26, 2019 via email

@MrBenGriffin
Copy link
Author

MrBenGriffin commented Aug 27, 2019 via email

@jtanx
Copy link
Contributor

jtanx commented Aug 27, 2019

Hmm, interesting. It's hard to tell from the crash report alone, but if I had to guess, there's some memory corruption going on.

Were there any particular steps that you took that seem to cause crashes more often than others? What was the previous version you were using that was better? Are you able to share the font that you were working on?

@MrBenGriffin
Copy link
Author

MrBenGriffin commented Aug 27, 2019 via email

@MrBenGriffin
Copy link
Author

Just to update you on my earlier comment.
I did do some work on a new font - but ended up mainly doing analysis work for the font so didn't get much time on FontForge itself. Like a few minutes. It didn't crash - but that isn't too much of a surprise, really.

@jtanx
Copy link
Contributor

jtanx commented Aug 28, 2019

I've made a version compiled with ASan (memory checking): http://dl.bintray.com/fontforge/fontforge/FontForge-2019-08-28-c15c2e6-asan.app.dmg

Just note the following when using this:

  • I'd expect it to be more likely to crash than the normal version, as it will hard-fail on any memory errors, instead of continuing on
  • Expect it to be slower (iirc they mention a 2x slowdown)
  • Run it from a terminal, as it will dump info there if there's an issue, like:
==2979==ERROR: AddressSanitizer: heap-use-after-free on address 0x611000146148 at pc 0x00010db4859a bp 0x7fff52144f30 sp 0x7fff52144f28
READ of size 8 at 0x611000146148 thread T0
    #0 0x10db48599 in CVInfoDrawText (fontforge:x86_64+0x10008f599)
    #1 0x10db45a41 in CVInfoDraw (fontforge:x86_64+0x10008ca41)
    #2 0x10dbd64b5 in CVMouseDownSpiroPoint (fontforge:x86_64+0x10011d4b5)
    #3 0x10db966f2 in CVMouseDown (fontforge:x86_64+0x1000dd6f2)
    #4 0x10db91e7b in v_e_h (fontforge:x86_64+0x1000d8e7b)
    #5 0x10df88a14 in _GWidget_Container_eh (fontforge:x86_64+0x1004cfa14)
    #6 0x10dfc607c in _GGDKDraw_CallEHChecked (fontforge:x86_64+0x10050d07c)
    #7 0x10dfbab29 in _GGDKDraw_DispatchEvent (fontforge:x86_64+0x100501b29)
    #8 0x10ef1e2a0 in _gdk_event_emit (libgdk-3.0.dylib:x86_64+0x152a0)
    #9 0x10ef4b651 in gdk_event_dispatch (libgdk-3.0.dylib:x86_64+0x42651)
    #10 0x10f2d1955 in g_main_context_dispatch (libglib-2.0.0.dylib:x86_64+0x38955)
    #11 0x10f2d1c8c in g_main_context_iterate (libglib-2.0.0.dylib:x86_64+0x38c8c)
    #12 0x10f2d1d13 in g_main_context_iteration (libglib-2.0.0.dylib:x86_64+0x38d13)
    #13 0x10dfc27fc in GGDKDrawEventLoop (fontforge:x86_64+0x1005097fc)
    #14 0x10df1f3ab in fontforge_main (fontforge:x86_64+0x1004663ab)
    #15 0x7fffa497a234 in start (libdyld.dylib:x86_64+0x5234)

0x611000146148 is located 200 bytes inside of 240-byte region [0x611000146080,0x611000146170)
freed by thread T0 here:
    #0 0x110b3e2f0 in wrap_realloc (libclang_rt.asan_osx_dynamic.dylib:x86_64+0x562f0)
    #1 0x10dbd62e0 in CVMouseDownSpiroPoint (fontforge:x86_64+0x10011d2e0)
    #2 0x10db966f2 in CVMouseDown (fontforge:x86_64+0x1000dd6f2)
    #3 0x10db91e7b in v_e_h (fontforge:x86_64+0x1000d8e7b)
    #4 0x10df88a14 in _GWidget_Container_eh (fontforge:x86_64+0x1004cfa14)
    #5 0x10dfc607c in _GGDKDraw_CallEHChecked (fontforge:x86_64+0x10050d07c)
    #6 0x10dfbab29 in _GGDKDraw_DispatchEvent (fontforge:x86_64+0x100501b29)
    #7 0x10ef1e2a0 in _gdk_event_emit (libgdk-3.0.dylib:x86_64+0x152a0)
    #8 0x10ef4b651 in gdk_event_dispatch (libgdk-3.0.dylib:x86_64+0x42651)
    #9 0x10f2d1955 in g_main_context_dispatch (libglib-2.0.0.dylib:x86_64+0x38955)
    #10 0x10f2d1c8c in g_main_context_iterate (libglib-2.0.0.dylib:x86_64+0x38c8c)
    #11 0x10f2d1d13 in g_main_context_iteration (libglib-2.0.0.dylib:x86_64+0x38d13)
    #12 0x10dfc27fc in GGDKDrawEventLoop (fontforge:x86_64+0x1005097fc)
    #13 0x10df1f3ab in fontforge_main (fontforge:x86_64+0x1004663ab)
    #14 0x7fffa497a234 in start (libdyld.dylib:x86_64+0x5234)

previously allocated by thread T0 here:
    #0 0x110b3df5c in wrap_malloc (libclang_rt.asan_osx_dynamic.dylib:x86_64+0x55f5c)
    #1 0x10dbd5fc5 in CVMouseDownSpiroPoint (fontforge:x86_64+0x10011cfc5)
    #2 0x10db966f2 in CVMouseDown (fontforge:x86_64+0x1000dd6f2)
    #3 0x10db91e7b in v_e_h (fontforge:x86_64+0x1000d8e7b)
    #4 0x10df88a14 in _GWidget_Container_eh (fontforge:x86_64+0x1004cfa14)
    #5 0x10dfc607c in _GGDKDraw_CallEHChecked (fontforge:x86_64+0x10050d07c)
    #6 0x10dfbab29 in _GGDKDraw_DispatchEvent (fontforge:x86_64+0x100501b29)
    #7 0x10ef1e2a0 in _gdk_event_emit (libgdk-3.0.dylib:x86_64+0x152a0)
    #8 0x10ef4b651 in gdk_event_dispatch (libgdk-3.0.dylib:x86_64+0x42651)
    #9 0x10f2d1955 in g_main_context_dispatch (libglib-2.0.0.dylib:x86_64+0x38955)
    #10 0x10f2d1c8c in g_main_context_iterate (libglib-2.0.0.dylib:x86_64+0x38c8c)
    #11 0x10f2d1d13 in g_main_context_iteration (libglib-2.0.0.dylib:x86_64+0x38d13)
    #12 0x10dfc27fc in GGDKDrawEventLoop (fontforge:x86_64+0x1005097fc)
    #13 0x10df1f3ab in fontforge_main (fontforge:x86_64+0x1004663ab)
    #14 0x7fffa497a234 in start (libdyld.dylib:x86_64+0x5234)

SUMMARY: AddressSanitizer: heap-use-after-free (fontforge:x86_64+0x10008f599) in CVInfoDrawText
Shadow bytes around the buggy address:
  0x1c2200028bd0: fd fd fd fd fd fd fd fd fd fd fa fa fa fa fa fa
  0x1c2200028be0: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd
  0x1c2200028bf0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x1c2200028c00: fd fd fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x1c2200028c10: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
=>0x1c2200028c20: fd fd fd fd fd fd fd fd fd[fd]fd fd fd fd fa fa
  0x1c2200028c30: fa fa fa fa fa fa fa fa 00 00 00 00 00 00 00 00
  0x1c2200028c40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x1c2200028c50: 00 00 00 00 00 fa fa fa fa fa fa fa fa fa fa fa
  0x1c2200028c60: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x1c2200028c70: fd fd fd fd fd fd fd fd fd fd fa fa fa fa fa fa
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
==2979==ABORTING
/Applications/FontForge.app/Contents/MacOS/FontForge: line 107:  2979 Abort trap: 6           ( exec $WRAPPER $bundle_bin/fontforge -new )

@MrBenGriffin
Copy link
Author

MrBenGriffin commented Aug 28, 2019 via email

@MrBenGriffin
Copy link
Author

MrBenGriffin commented Aug 28, 2019 via email

@khaledhosny
Copy link
Contributor

This is probably the same as #3909.

@jtanx
Copy link
Contributor

jtanx commented Aug 30, 2019

@MrBenGriffin if you'd like to try out the latest version to see if it fixes it for you: http://dl.bintray.com/fontforge/fontforge/:FontForge-2019-08-29-f8fc94c.app.dmg

This is also the latest asan version: http://dl.bintray.com/fontforge/fontforge/:FontForge-2019-08-30-9d41a2c-asan.app.dmg

@MrBenGriffin
Copy link
Author

MrBenGriffin commented Aug 30, 2019 via email

@MrBenGriffin
Copy link
Author

MrBenGriffin commented Aug 30, 2019 via email

@skef
Copy link
Contributor

skef commented Jan 31, 2020

@jtanx is there anything outstanding on this one, as far as you know? If #3914 dealt with the last report it may be done.

@jtanx
Copy link
Contributor

jtanx commented Feb 2, 2020

Without more info on how to repro that gsub editing crash there's not much I can do.

As always, try using the latest app bundle from http://dl.bintray.com/fontforge/fontforge/ and reopen it's still an issue. (Edit; It may be empty/not working at the moment, because we ran over the usage limits, so I've cleared it out and kicked off a new build to get some fresh builds)

@jtanx jtanx closed this as completed Feb 2, 2020
Q1 2020 Release automation moved this from Needs triage to Closed Feb 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Q1 2020 Release
  
Closed
Development

No branches or pull requests

4 participants