[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sup-talk] curses pinentry woes (still)



Hi,

Excerpts from Michael Stapelberg's message of So Feb 07 21:25:57 +0100 2010:
> Excerpts from Sven Moritz Hallberg's message of So Feb 07 20:10:04 +0100 2010:
> > Whenever gpg-agent starts pinentry-curses with sup running, the interface gets
> > "messed up". Unfortunately, I'm still experiencing such a problem with sup
> > version 0.10.2.
Further debugging told me that it is a thread related problem. You can work
around it by disabling threads when starting sup using the -n option.

The problem seems to be that other threads still run while one thread calls
system (which in turn uses fork, which seems to be the real cause of the
problem). Even using Thread.critical = true does not fix the problem (it is
removed in ruby 1.9 anyways). I’ve attached a proof of concept which
illustrates the problem.

Could anyone with a little more insight into ruby threads have a look at this
issue please?

Specifically, if you comment out the call to reporting_thread in
lib/sup/modes/thread-index-mode.rb:101, it seems to work.

Best regards,
Michael

Attachment: poc.rb
Description: Binary data

_______________________________________________
sup-talk mailing list
sup-talk@rubyforge.org
http://rubyforge.org/mailman/listinfo/sup-talk