In perl.git, the branch smoke-me/tonyc/thread-deliver has been created

<http://perl5.git.perl.org/perl.git/commitdiff/84919f31231c70c221bb3246f14edd425e2b82bc?hp=0000000000000000000000000000000000000000>

        at  84919f31231c70c221bb3246f14edd425e2b82bc (commit)

- Log -----------------------------------------------------------------
commit 84919f31231c70c221bb3246f14edd425e2b82bc
Author: Tony Cook <t...@develop-help.com>
Date:   Tue Jun 24 11:30:59 2014 +1000

    [perl #81074] signals to the main thread if the child doesn't request them
    
    Also fixes [perl #120951] so that signal handlers called outside of a
    perl thread are marked via the safe signals mechanism to be delivered
    to the main thread.
    
    These changes fix the following circumstances:
    
    - the operating system delivers a signal sent to a process to a child
      thread instead of the main thread when only the main thread has a
      signal handler set.  Linux preferably sends signals to the main
      thread, but can send them to a child thread instead if the
      main thread is busy.  Previously perl would attempt to deliver the
      signal to the child, now it delivers the signal to the main thread
      unless the child has set a handler. [perl #81074]
    
    - a signal is received in the context of a child thread created outside
      of perl itself (eg. by Gtk).  Previously perl would crash.
      [perl #120951]
    
    While testing this update I found in a bug in NetBSD, which doesn't
    always initialize thread specific storage to NULL, see:
    
      http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=49006
-----------------------------------------------------------------------

--
Perl5 Master Repository

Reply via email to