HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/test/libregrtest/__pycache__/refleak.cpython-310.opt-2.pyc
o

�i�@s�ddlZddlZddlZddlZddlmZddlmZddlm	Z	ddl
mZzddlm
Z
WneyAddlZdd�Z
Ynwd	d
�Zdd�Zd
d�ZdS)�N)�
isabstract)�support)�	os_helper)�clear_caches)�	_get_dumpcCs&tdd�|jD��}||j|j|jfS)Ncss�|]}t�|�VqdS�N)�weakref�ref)�.0�obj�r�5/usr/local/lib/python3.10/test/libregrtest/refleak.py�	<genexpr>s�z_get_dump.<locals>.<genexpr>)�set�
_abc_registry�
_abc_cache�_abc_negative_cache�_abc_negative_cache_version)�clsZregistry_weakrefsrrr
rs�rc'	s�	ddl}ddl�ttd�std��t�tjdd�}|j�	�}tj
�	�}zddl}Wnty7d}Ynw|j
�	�}i}	�fdd��jjD�D]}
t|
�sQqJ|
��|
gD]
}t|�d|	|<qXqJdd�tdd	�D���fd
d�}|j\}
}}tj�tj|�}|
|}tt|��}dg|}dg|}dg|}tj}tj}tj}d}}}|js�td|d
tj d�td|ddd|�tj dd�t!|||||	�|D]@}|�t!|||||	�|�}|�}|�}|js�tddtj dd�|||�||<|||�||<|||�||<|}|}|}q�|j�sttj d�dd�}dd�} d}!|d|f|d|f|d| ffD]E\}"}#}$|"|
d�}"|$|"��ryd||"|#t"|"�f}%t|%tj dd�t#|d ��}&t|%|&d�|&�$�Wd�n	1�srwYd}!�q5|!S)!Nr�gettotalrefcountz9Tracking reference leaks requires a debug build of Pythonc�g|]}t�j|��qSr��getattr�abc�r
�a��collectionsrr
�
<listcomp>4�zdash_R.<locals>.<listcomp>cSsi|]}||�qSrr)r
�valuerrr
�
<dictcomp>>szdash_R.<locals>.<dictcomp>i���i�cs��||�Sr)�
setdefault)r )�int_poolrr
�get_pooled_int?szdash_R.<locals>.get_pooled_intZ	beginningZrepetitions)�fileZ
1234567890�
�T)r%�flush�.�)�endr%r(cSstdd�|D��S)Ncss�|]}|dkVqdS)r'Nr)r
Zdeltarrr
rs�z2dash_R.<locals>.check_rc_deltas.<locals>.<genexpr>)�all��deltasrrr
�check_rc_deltasrs
zdash_R.<locals>.check_rc_deltascSst|�Sr)�anyr-rrr
�check_fd_deltas�szdash_R.<locals>.check_fd_deltasFZ
referencesz
memory blockszfile descriptorsz%s leaked %s %s, sum=%sr)%�copyreg�collections.abc�hasattr�sys�	Exception�warm_caches�warnings�filters�dispatch_table�copy�path_importer_cache�	zipimport�ImportError�_zip_directory_cacher�__all__r�__subclasses__r�rangeZ
huntrleaks�os�path�joinrZSAVEDCWD�list�getallocatedblocksr�fd_count�quiet�print�stderr�dash_R_cleanup�sum�openr()'�nsZ	test_nameZ	test_funcr2�fs�ps�picr=�zdc�abcsrrr$ZnwarmupZntrackedZfnameZrepcountZ	rep_rangeZ	rc_deltasZalloc_deltasZ	fd_deltasrGrrHZ	rc_beforeZalloc_beforeZ	fd_before�iZalloc_afterZrc_afterZfd_afterr/r1Zfailedr.Z	item_nameZchecker�msgZrefrepr)rr#r
�dash_Rs�


�
�


��
�
��rWcsddl}ddl�|tjdd�<|j��|j�|�tj��tj�|�zddl	}Wn	t
y4Ynw|j��|j�|�t���fdd��j
jD�}tt|�}|D]%}|��|gD]}	|�|	t��D]
}
|
�duru|	�|
��qh|	��q_qVt�dS)Nrcrrrrrrr
r�rz"dash_R_cleanup.<locals>.<listcomp>)r2r3r8r9r:�clear�updater5r<r=r>r?�_clear_type_cacherr@�filterrrA�getr�register�_abc_caches_clearr)rPrQrRrSrTr2r=Zabs_classesrrr	rrr
rL�s4

�


�
�
rLcCsNttd��}td�D]
}|||d�q
dd�td�D�ttdd��dS)N�r'cSsg|]}t|��qSr)�chr)r
rUrrr
r�szwarm_caches.<locals>.<listcomp>���i)�bytesrBrF)�srUrrr
r7�s
r7)rC�rer5r8�inspectr�testrZtest.supportrZtest.libregrtest.utilsr�_abcrr>rrWrLr7rrrr
�<module>s$�"