
     i                    V    d dl mZ d dlZd dlZddlmZ ddlmZ  G d de          ZdS )    )annotationsN   )OperationFailed)OSFSc                  2     e Zd Zdd	 fdZ fdZd Z xZS )
TempFST
auto_cleanboolignore_clean_errorsc                    || _         || _        t          j        d          | _        d| _        t                                          | j                   d S )N__temp_fs__F)r	   r   tempfilemkdtemp	_temp_dir_cleanedsuper__init__)selfr	   r   	__class__s      k/srv/www/vhosts/g4struct/public_html/venv/lib/python3.11/site-packages/fontTools/misc/filesystem/_tempfs.pyr   zTempFS.__init__   sK    $#6 !)-88(((((    c                ~    | j         r|                                  t                                                       d S )N)r	   cleanr   close)r   r   s    r   r   zTempFS.close   s/    ? 	JJLLLr   c                    | j         rd S 	 t          j        | j                   n6# t          $ r)}| j        st          d| j                  |Y d }~nd }~ww xY wd| _         d S )Nz&failed to remove temporary directory: T)r   shutilrmtreer   	Exceptionr   r   )r   es     r   r   zTempFS.clean   s    = 	F	M$.)))) 	 	 	+ %OT^OO     	
 s   % 
AAA)TT)r	   r
   r   r
   )__name__
__module____qualname__r   r   r   __classcell__)r   s   @r   r   r   
   sj        ) ) ) ) ) ) )    
      r   r   )	
__future__r   r   r   _errorsr   _osfsr   r    r   r   <module>r(      s    " " " " " "   $ $ $ $ $ $          T     r   