-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Crash when using character with umlaut #2016
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
Conversation
As a data point, I can't reproduce this with 1.2.x or master on Linux Python 2.7 or 3.3. So it's most likely something Windows-specific, and apparently specific to the STL implementation at that (oh joy). |
As a workaround, does setting adding to the top
help? |
@cgohlke: This is a wild guess, but would you mind trying:
|
That doesn't crash but produces a corrupt EPS output. |
For reference, here's the relevant part of the call stack:
|
Sorry to "debug by remote"... Try this:
|
Thanks! That fixes the crash and produces the correct output. Any idea why this would only surface on Python 2.7? |
I have no idea. The crash is happening because it's reading one element beyond the end of a STL vector, which in many cases wouldn't matter, but I think just due to unluckiness of memory layout it does. In any event, glad we've found a fix. I'll attach a real PR to this issue so we can merge it. |
Crash when using character with umlaut
From the matplotlib-users thread entitled "problem with a umlaut" started by Ojala Janne.
Christoph Gohlke adds:
I can reproduce the crash on Python 2.7, 32 and 64 bit. Python 2.6 and 3.3 appear to work. The call stack is attached. The crash is in ttfont_add_glyph_dependencies() at https://github.com/matplotlib/matplotlib/blob/v1.2.x/ttconv/pprdrv_tt2.cpp#L703