RagTime crash caused by macOS 10.12 (Sierra) bug
With the release of macOS 10.12.2 this warning is obsolete!
We have been receiving crash reports by macOS 10.12 users who experience continued RagTime crashes.
The crash report always shows the following output:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 com.apple.CoreGraphics x_malloc + 28
1 com.apple.CoreGraphics shape_accum_shape + 361
2 com.apple.CoreGraphics dl_shape_get_shape + 96
3 com.apple.CoreGraphics CGDisplayListDrawInContextDelegate + 42
4 com.apple.CoreGraphics build_tile + 4553
5 com.apple.CoreGraphics create_pattern_tile_pattern + 480
6 com.apple.CoreGraphics ripc_GetColor + 4813
7 com.apple.CoreGraphics ripc_Render + 370
8 com.apple.CoreGraphics ripc_DrawPath + 317
9 com.apple.CoreGraphics CGContextDrawPath + 184
10 com.apple.CoreGraphics CGContextStrokePath + 19
11 de.ragtime.base Vision::Mac::XQuartzFocus::DrawShape(TShapeData*, TInkData*, TStyleData*, CGAffineTransform const*) + 1127 (QuartzFocus.cpp:7221)
12 de.ragtime.base Vision::Mac::XQuartzFocus::Draw(TShapeData*) + 212 (QuartzFocus.cpp:2251)
…
This crash occurs with documents in which a pattern is used for fillings or linings, e.g.:
Drawing a pattern repeatedly consumes memory that is not released anymore. This happens until RagTime crashes.
Our investigations show that the OS is responsible for the crash, RagTime is not responsible. It is a bug which occurs under macOS 10.12.0 and 10.12.1. It does not occur in previous macOS versions.
Until then, the usage of patterns should be avoided. If such documents need to be used nonetheless, RagTime should regularly be quit and restarted, to prevent crashes.