Dear Kou and other readers,
today, after updating another machine to latest Ruby/Ruby-gnome, I
found that I received a crash with (I believe) every signal being
processed. I attach a simple test program which, on my machine,
triggers a crash when the ‘test’ button is pressed. If the
btn.signal_connect call is commented out, no crash happens.
I attach the output of the crash. As you can see, it is triggered by
Ruby, from thread.c, function rb_thread_call_with_gvl. It appears that
it has been “called by a thread which has GVL”, because the ‘blocking
region buffer’ is null. For me, these are unknown waters.
Experimentally I tried to comment out the rb_bug line in
rb_thread_call_with_gvl. The app does not crash, but becomes
non-responsive.
Does this tell you anything?
Carlo
Hi,
In [email protected]
“[ruby-gnome2-devel-en] A crash with latest ruby/ruby-gnome” on Fri,
21 Mar 2014 10:02:08 +0100,
“Carlo E. Prelz” [email protected] wrote:
Experimentally I tried to comment out the rb_bug line in
rb_thread_call_with_gvl. The app does not crash, but becomes
non-responsive.
Thanks for your report!
The attached sample program was very helpful.
I’ve fixed it but there is interrupt isn’t handled
problem. I’ll fix it later.
If we change to rb_thread_call_without_gvl() from
rb_thread_call_without_gvl2(), it is solved. But we should
consider about the solution is valid solution.
Thanks,
kou
Subject: Re: [ruby-gnome2-devel-en] A crash with latest ruby/ruby-gnome
Date: ven 21 mar 14 07:11:58 +0900
Quoting Kouhei S. ([email protected]):
I’ve fixed it but there is interrupt isn’t handled
problem. I’ll fix it later.
Indeed: the program I am developing runs again, but does not stop with
Ctrl-C.
This stuff must be quite hairy…
Thanks again!
Carlo
–
parte,
(Chuang-Tzu)
Hi,
In [email protected]
“Re: [ruby-gnome2-devel-en] A crash with latest ruby/ruby-gnome” on
Fri, 21 Mar 2014 11:25:49 +0100,
“Carlo E. Prelz” [email protected] wrote:
Subject: Re: [ruby-gnome2-devel-en] A crash with latest ruby/ruby-gnome
Date: ven 21 mar 14 07:11:58 +0900
Quoting Kouhei S. ([email protected]):
I’ve fixed it but there is interrupt isn’t handled
problem. I’ll fix it later.
Indeed: the program I am developing runs again, but does not stop with
Ctrl-C.
Ctrl-C works again!
Thanks,
kou
Subject: Re: [ruby-gnome2-devel-en] A crash with latest ruby/ruby-gnome
Date: ven 21 mar 14 09:23:40 +0900
Quoting Kouhei S. ([email protected]):
Ctrl-C works again!
Don’t take it personally but it only works when only the main
window is open. If I have another modal window open, it still does not
work.
(this does not cause such a problem to me…)
Since you showed appreciation for my little test program, here is
another one. Press the button, and another window appears. At that
point, Ctrl_C still does not work. Or rather, the interrupt is
processed only when the new window’s button is pressed.
Carlo
Hi,
In [email protected]
“Re: [ruby-gnome2-devel-en] A crash with latest ruby/ruby-gnome” on
Fri, 21 Mar 2014 13:40:35 +0100,
“Carlo E. Prelz” [email protected] wrote:
point, Ctrl_C still does not work. Or rather, the interrupt is
processed only when the new window’s button is pressed.
Oh…
The new test program also works well now.
Thanks,
kou