ó úàÜdc@s½ddlZddlZddlZyddlmZWnddlmZnXddlmZmZddl Z dZ da ddd„ƒYZ d„Z d „Ze ƒZe jejd ƒe jd ƒed ƒeejƒZedkrd GHejd ƒngZx0ee ƒD]"Zejed eddƒƒqWxeD]ZejƒqHWxeD]ZejƒqcWeejƒee ekr©dGHejd ƒne jd ƒgZx0ee ƒD]"Zejed eddƒƒqÉWxeD]ZejƒqöWxeD]ZejƒqWeejƒee edkr[dGHejd ƒnt rvdGHejd ƒne jƒe j d ƒdkrdGHnde j d ƒGHe j!ƒdS(iÿÿÿÿN(t get_ident(tThreadtLockiit ErrorHandlercBseZd„Zd„ZRS(cCsg|_tƒ|_dS(N(terrorsRtlock(tself((sC/opt/cpanel/ea-libxml2/share/doc/libxml2/python/examples/thread2.pyt__init__s cCs.|jjƒ|jj|ƒ|jjƒdS(N(RtacquireRtappendtrelease(Rtctxtstr((sC/opt/cpanel/ea-libxml2/share/doc/libxml2/python/examples/thread2.pythandlers (t__name__t __module__RR (((sC/opt/cpanel/ea-libxml2/share/doc/libxml2/python/examples/thread2.pyRs cCs tjdƒ}tj|ƒ|S(Ni(tlibxml2tlineNumbersDefault(told((sC/opt/cpanel/ea-libxml2/share/doc/libxml2/python/examples/thread2.pytgetLineNumbersDefaults cCsRtjdƒ|tƒkr1dadtƒGHnytjdƒ}WnnXdS(NisBFAILED to obtain correct value for lineNumbersDefault in thread %dsbad.xml(ttimetsleepRtfailedRRt parseFile(texpectedLineNumbersDefaulttdoc((sC/opt/cpanel/ea-libxml2/share/doc/libxml2/python/examples/thread2.pyttests  tis#FAILED: should have obtained errorsttargettargss3FAILED: did not obtain the correct number of errorsitFAILEDtOKsMemory leak %d bytes((i(i("tstringtsysRt_threadRtthreadt threadingRRRt THREADS_COUNTRRRRtehtregisterErrorHandlerR RtlenRtectexitttstrangetiR tttstarttjointthrDefLineNumbersDefaultValuet cleanupParsert debugMemoryt dumpMemory(((sC/opt/cpanel/ea-libxml2/share/doc/libxml2/python/examples/thread2.pyts`$              !