inkscape crashed with segfault in ExpressionEvaluator on OpenBSD

Bug #1550178 reported by Rafael Sadowski
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
High
Rafael Sadowski

Bug Description

Hello inscape developer team,

in OpenBSD we always run in "EvaluatorException("Invalid UTF8 string", NULL);" in src/util/expression-evaluator.cpp.
Inkscape::Ui::Widget::SpinButton call Inkscape::Util::ExpressionEvaluator(get_text().c_str() ... with an invalid UTF-8 string.

In OpenBSD we fix the problem with explicit convert the string to UTF-8. See below to attachment.
A complete error description you find here: https://marc.info/?l=openbsd-ports&m=145461812922697&w=2

I hope this patch will find the way in inkscape.

Best regards,

Rafael Sadowski

Tags: crash ui
Revision history for this message
Rafael Sadowski (rafael-g) wrote :
Revision history for this message
jazzynico (jazzynico) wrote :

Crash not reproduced on Windows XP, Inkscape 0.91 and trunk rev. 14666.

That said, the attached patch compiles correctly and local tests don't show obvious regressions.

@Raphael - Does the crash also occur when using other tools?

Changed in inkscape:
importance: Undecided → High
tags: added: crash ui
Revision history for this message
Rafael Sadowski (rafael-g) wrote :

No, it only crash in inkscape on OpenBSD (i386/amd64) (reported by me and other inkscape OpenBSD users).

jazzynico (jazzynico)
Changed in inkscape:
status: New → In Progress
milestone: none → 0.92
Revision history for this message
jazzynico (jazzynico) wrote :

Fix tested on Xubuntu 16.04, and applied to the trunk rev. 14951.
Thanks for your patch, Rafael!

Changed in inkscape:
assignee: nobody → Rafael Sadowski (rafael-g)
status: In Progress → Fix Committed
Revision history for this message
Rafael Sadowski (rafael-g) wrote :

Thanks for committing in trunk, jazzynico!

Bryce Harrington (bryce)
Changed in inkscape:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.