[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #50198] Calling "error" from the GUI thread le
From: |
Pantxo Diribarne |
Subject: |
[Octave-bug-tracker] [bug #50198] Calling "error" from the GUI thread lead to segfaults |
Date: |
Tue, 7 Nov 2017 17:18:23 -0500 (EST) |
User-agent: |
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:56.0) Gecko/20100101 Firefox/56.0 |
Follow-up Comment #3, bug #50198 (project octave):
As suggested by Rik in some bug report, I tried the approach of catching
octave::execution_exception thrown in the GUI thread by opengl graphics
functions and rethrowing them in the interpreter thread using
octave_link::post_event. At least Octave is able to recover from error (see
attached diff). The output message is a bit messed up though and the error is
interpreted as a "parse error":
octave:1> graphics_toolkit fltk
octave:2> plot (rand (6))
octave:3> print /tmp/toto.svg
error: Expect octave to return gracefully
error: called from
__opengl_print__ at line 183 column 7
print at line 552 column 14
octave:3> close all
octave:4> graphics_toolkit qt
octave:5> plot (rand (6))
octave:6> print /tmp/toto.svg
error: Expect octave to return gracefully
octave:7> error: parse error
error: called from
__opengl_print__ at line 183 column 7
print at line 552 column 14
octave:7>
At that point the Qt figure has recovered its original size so it means
unwind_protect_cleanup blocks have been properly executed.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?50198>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Octave-bug-tracker] [bug #50198] Calling "error" from the GUI thread lead to segfaults,
Pantxo Diribarne <=