Comment 32 for bug 1662531

Revision history for this message
su_v (suv-lp) wrote :

In addition to Hachmann's comment, I would recommend to limit the scope of the change(s) - proposed to avoid the crash of inkscape instances spawned via Popen() in python-based extension scripts - to the affected platform(s), instead of forcing falling back to the C locale entirely on all platforms (even for those not affected by the symptom as exposed with trunk builds for Windows). Changes can be ifdef'd in C/C++ code, and wrapped in a conditional in python (e.g. "if os.name == 'nt':" as used elsewhere). If needed, the conditions can be later expanded to include other platforms.

Questions one could ask:
- what environment is inherited by inkscape processes spawned via Popen() on Windows
- did the environment for such processes change in GTK3-based trunk builds for Windows using current devlibs64
- what changes had been introduced with the merge of the document-rotation branch that affect such spawned processes [1]
- what is the minimal change to solve this for affected platforms

[1] Clue mentioned elsewhere:
«(...) because this Inkscape rev introduced a degree symbol (°) in a new spin box»
https://github.com/Moini/inkscape-extensions-multi-bool/issues/2#issuecomment-280758987
The '°' symbol for degree is already used elsewhere in Inkscape's GUI (via unit menu for angles) - why does the newly added one have such side-effects on Windows? Note also that rev 15444 does not use 'U+00B0' (DEGREE SIGN) but instead AFAICT adds multiple uses of 'U+00BA' (MASCULINE ORDINAL INDICATOR) in literal strings used for canvas text (via cairo) as well as in entries and labels (via Gtk).