
                         ^    d Z ddlmZ ddlmZ ddlmZ ddlZddlZddlZddlm	Z	 d	dZ
d Zy)
z-Cloud SDK default keyboard interrupt handler.    )absolute_import)division)unicode_literalsN)logc                    ~ ~d}	 t         j                  j                  |       t        j                  t        j                  t        j                         t        j                  t        j                         t        j                         t	        j                  d       y# t        $ r" t        j
                  j                  |       Y w xY w)zHandles keyboard interrupts (aka SIGINT, ^C).

  Disables the stack trace when a command is killed by keyboard interrupt.

  Args:
    signal_number: The interrupt signal number.
    frame: The signal stack frame context.
  z'

Command killed by keyboard interrupt
   N)r   errPrint	NameErrorsysstderrwritesignalSIGINTSIG_DFLoskillgetpidexit)signal_numberframemessages      2lib/googlecloudsdk/core/util/keyboard_interrupt.pyHandleInterruptr      s     U8'GGMM'
 	--v~~.''"))+v}}%((1+ 
 JJWs   B# #(CCc                  t    	 t        j                   t         j                  t               y# t        $ r Y yw xY w)z:Installs the default Cloud SDK keyboard interrupt handler.N)r   r   r   
ValueError     r   InstallHandlerr   4   s-    	
MM&--1	 	 			s   (+ 	77)NN)__doc__
__future__r   r   r   r   r   r   googlecloudsdk.corer   r   r   r   r   r   <module>r#      s)     4 &  ' 	  
 #.	r   