
    !ni                        d dl Z d dlZd dlmZ d dlZd dlmZ d dlmZ d dlmZm	Z	m
Z
 g dZdefde	fd	e
fgZd d
lmZ ej                  def        ej                  d e       ge   ej"                  d      Zej&                  j)                  de      Zej,                  dk(  Z eedd       G d de      Znej4                  Z G d dej6                        Zd Z eej:                        Z eej<                        Z eed      r#ej                  d        eej@                        Z [ejB                  Z![y)    N)FunctionType)greenio)patcher)select	threadingtime)call
check_callPopenr   r   r   )	selectorsr   
subprocesswin32TimeoutExpiredc                       e Zd ZdZddZd Zy)r   zeThis exception is raised when the timeout expires while waiting for
        a child process.
        Nc                 .    || _         || _        || _        y N)cmdtimeoutoutput)selfr   r   r   s       Y/home/homepc/tiktok-worker/venv/lib/python3.12/site-packages/eventlet/green/subprocess.py__init__zTimeoutExpired.__init__   s    DH"DL DK    c                 <    d| j                   d| j                  dS )Nz	Command 'z' timed out after z seconds)r   r   )r   s    r   __str__zTimeoutExpired.__str__$   s    XXt||- .r   r   )__name__
__module____qualname____doc__r   r    r   r   r   r      s    		!
	.r   c                      e Zd ZdZes)ddZej                  j
                  j                  e_        ddZej                  j                  j                  e_        es e	ej                  j                  j                   e             Z
	  e	ej                  j                  j                   e             Z e	ej                  j                  j                   e             Zyy# e$ r Y yw xY w)r   z-eventlet-friendly version of subprocess.Popenc                    || _         t        j                  j                  | |dg|i | dD ]  }t	        | |      }|t        |      t        j                  k7  s/t	        |dd      }|s1|j                         r|dz  }|j                         r|dz  }|dk(  rd}t        j                  |||      }t        | ||        y )Nr   )stdinstdoutstderrmode rw)argssubprocess_origr   r   getattrtyper   	GreenPipereadablewritablesetattr)	r   r+   bufsizeargsskwdsattrpiper&   wrapped_pipes	            r   r   zPopen.__init__5   s    DI!!**4qI5IDI 4 6tT*#T
g6G6G(G #44D==? CKD==? CKD"a<&(G#*#4#4T4#ILD$56r   Nc                 R   |t        j                          |z   }	 	 | j                         }||S |-t        j                          kD  rt        | j                  |      t	        j
                  |       Y# t        $ r(}|j                  t        j                  k(  rY d }~y d }~ww xY w)Nr*   )	r   pollr   r+   eventletsleepOSErrorerrnoECHILD)r   r   check_intervalendtimestatuses         r   waitz
Popen.waitM   s     iikG+G	%!M&499;+@(G<<~.   	ww%,,& 	s#   A5 AA5 5	B&>B! B!!B&)r   )Ng{Gz?)r   r   r   r   	mswindowsr   r,   r   rD   r   _communicate__code__globals_communicate_with_select_communicate_with_pollAttributeErrorr    r   r   r   r   ,   s    7 	6, +0099AA( #((--55DL $!!..77I	'3%%>>GG	($ &2%%<<EE	&"   		s   
AC$ $C,+C,r   c                     t        | j                  t                     }| j                  |_        | j                  |_        |S r   )r   rG   rH   __kwdefaults____defaults__)functionnew_functions     r   patched_functionrQ   w   s8     1 179=L"*"9"9L ( 5 5Lr   check_output)"r>   systypesr   r;   r   r   eventlet.greenr   r   r   __patched__to_patchr   appendinjectrH   originalr,   modulesgetsubprocess_importedplatformrE   r-   	Exceptionr   r   rQ   r	   r
   hasattrrR   CalledProcessErrorr    r   r   <module>rb      sA    
     2 2 .vi 864.I $ i( ) |WY 2 2"'""<0kkoolOD LLG#	 ?,d3;. . )77NFO!! FV ,,-o889

?N+~&#O$@$@AL );; r   