o ?Ogs @s, ddlZGdddZddZddZdS)Nc@seZdZdddZddZdS)PopenNcCs||_||_d|_dSN)_cmd_env returncode)selfcmdenvr 6/opt/alt/python310/lib64/python3.10/_bootsubprocess.py__init__ s zPopen.__init__c Cst}|dkr=z.|jdurt|jd|j|jnt|jd|jWtd|j SWtd|j Stdwt|d\}}t||_ |j S)Nr) osforkrexecverexecv_exitwaitpidwaitstatus_to_exitcoder)rpid_statusr r r waits     z Popen.waitr)__name__ __module__ __qualname__r rr r r r r s  rcCsg}dD]\}}tt|t|dD] }|t|qq|dd|}t|ttfr2|}n t|tr;|g}ndS|D]}t|tsIdS|sNdS|D] }||vrZdSqPq?dS)N))az)AZ)09r z./-FT) rangeordappendchrjoin isinstancetupleliststr)rZ safe_charsfirstZlastZchZ check_strsargr r r _check_cmd$s.     r.cKs|rtt|t|std|d}t|tsd|}|d|}zQt|}t |}|r=td|d|zt |d }| }Wdn1sRwYWn t ycd}YnwWzt |W|StywY|Swzt |WwtyYww) Nzunsupported command: zcheck_output.tmp z >zCommand z returned non-zero exit status rb)NotImplementedErrorreprr. ValueErrorr(r+r'rsystemropenreadFileNotFoundErrorunlinkOSError)rkwargsZ tmp_filenamerZexitcodefpstdoutr r r check_outputBsH            r>)rrr.r>r r r r s