
xFWgc           @   s   d  d l  Z  d  d l Z d  d l m Z e Z d e f d     YZ e j   Z	 d   Z
 d   Z d a d   Z d d  Z d S(	   iN(   t   wrapst   _InterruptHandlerc           B   s   e  Z d    Z d   Z RS(   c         C   sy   t  |  _ | |  _ t | t t f  rl | t j k rB t j } ql | t j	 k r] d   } ql t
 d   n  | |  _ d  S(   Nc         S   s   d  S(   N(    (   t   unused_signumt   unused_frame(    (    s&   /usr/lib/python2.7/unittest/signals.pyt   default_handler   s    sY   expected SIGINT signal handler to be signal.SIG_IGN, signal.SIG_DFL, or a callable object(   t   Falset   calledt   original_handlert
   isinstancet   intt   longt   signalt   SIG_DFLt   default_int_handlert   SIG_IGNt	   TypeErrorR   (   t   selfR   (    (    s&   /usr/lib/python2.7/unittest/signals.pyt   __init__
   s    		c         C   s{   t  j t  j  } | |  k	 r1 |  j | |  n  |  j rM |  j | |  n  t |  _ x t j   D] } | j   qc Wd  S(   N(	   R   t	   getsignalt   SIGINTR   R   t   Truet   _resultst   keyst   stop(   R   t   signumt   framet   installed_handlert   result(    (    s&   /usr/lib/python2.7/unittest/signals.pyt   __call__   s    		(   t   __name__t
   __module__R   R   (    (    (    s&   /usr/lib/python2.7/unittest/signals.pyR   	   s   	c         C   s   d t  |  <d  S(   Ni   (   R   (   R   (    (    s&   /usr/lib/python2.7/unittest/signals.pyt   registerResult*   s    c         C   s   t  t j |  d    S(   N(   t   boolR   t   popt   None(   R   (    (    s&   /usr/lib/python2.7/unittest/signals.pyt   removeResult-   s    c          C   sD   t  d  k r@ t j t j  }  t |   a  t j t j t   n  d  S(   N(   t   _interrupt_handlerR"   R   R   R   R   (   R   (    (    s&   /usr/lib/python2.7/unittest/signals.pyt   installHandler1   s    c            sT     d  k	 r+ t      f d    } | St d  k	 rP t j t j t j  n  d  S(   Nc             sE   t  j t  j  } t   z   |  |   SWd  t  j  t  j |  Xd  S(   N(   R   R   R   t   removeHandler(   t   argst   kwargst   initial(   t   method(    s&   /usr/lib/python2.7/unittest/signals.pyt   inner;   s
    (   R"   R    R$   R   R   R   (   R*   R+   (    (   R*   s&   /usr/lib/python2.7/unittest/signals.pyR&   9   s
    (   R   t   weakreft	   functoolsR    R   t
   __unittestt   objectR   t   WeakKeyDictionaryR   R   R#   R"   R$   R%   R&   (    (    (    s&   /usr/lib/python2.7/unittest/signals.pyt   <module>   s    			