
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
U
    „á§\À  ã                   @   s„   d dl Z d dlmZ d dlmZ d dlmZ d dlmZ dZdZdZd	jeeed
�Ze  ee je jB ¡ZG dd„ deƒZdd„ ZdS )é    N)ÚHub)ÚIntegration©Úadd_global_event_processor)Úcapture_internal_exceptionsz[a-zA-Z0-9/._:\\-]+z[a-zA-Z0-9._:<>,-]+z[A-Fa-f0-9]+zã
^(?P<index>\d+)\.\s
(?P<package>{MODULE_RE})\(
  (?P<retval>{TYPE_RE}\ )?
  ((?P<function>{TYPE_RE})
    (?P<args>\([^)]*\))?
  )?
  ((?P<constoffset>\ const)?\+0x(?P<offset>{HEXVAL_RE}))?
\)\s
\[0x(?P<retaddr>{HEXVAL_RE})\]$
)Ú	MODULE_REÚ	HEXVAL_REÚTYPE_REc                   @   s   e Zd ZdZedd„ ƒZdS )ÚGnuBacktraceIntegrationZgnu_backtracec                  C   s   t dd„ ƒ} d S )Nc              
   S   s(   t ƒ � t| |ƒW  5 Q R £ S Q R X d S )N)r   Ú_process_gnu_backtrace)ÚeventÚhint© r   úV/opt/alt/python38/lib/python3.8/site-packages/sentry_sdk/integrations/gnu_backtrace.pyÚprocess_gnu_backtrace(   s    zAGnuBacktraceIntegration.setup_once.<locals>.process_gnu_backtracer   )r   r   r   r   Ú
setup_once&   s    z"GnuBacktraceIntegration.setup_onceN)Ú__name__Ú
__module__Ú__qualname__Z
identifierÚstaticmethodr   r   r   r   r   r
   #   s   r
   c              	   C   sb  t j t¡d kr| S | dd ¡}|d kr,| S |  dd ¡}|d krD| S | dd ¡}|d kr\| S |D ]ü}| di ¡ dg ¡}|s~q`| dd ¡}|s�q`g }g }| ¡ D ]t}	t |	¡}
|
rè| t	|
 
d¡ƒ|
 
d¡pÎd |
 
d	¡pÚd d
dœf¡ q |�r
|	 ¡ �r
|d d …=  �qq | |	¡ q |r`|jdd„ d� |D ]\}}| |¡ �q.| d¡ d |¡|d< q`| S )NÚexc_infoÚ	exceptionÚvaluesZ
stacktraceÚframesÚvalueÚindexÚpackageÚfunctionZnative)r   r   Úplatformc                 S   s
   | d  S )Nr   r   )Úxr   r   r   Ú<lambda>e   ó    z(_process_gnu_backtrace.<locals>.<lambda>)Úkeyz:<stacktrace parsed and removed by GnuBacktraceIntegration>Ú
)r   ÚcurrentZget_integrationr
   ÚgetÚ
splitlinesÚFRAME_REÚmatchÚappendÚintÚgroupÚstripÚsortÚjoin)r   r   r   r   r   r   ÚmsgZadditional_framesZnew_msgÚliner(   Ú_Úframer   r   r   r   .   sT    
ýþÿ


r   )ÚreZsentry_sdk.hubr   Zsentry_sdk.integrationsr   Zsentry_sdk.scoper   Zsentry_sdk.utilsr   ZAnyZDictr   r	   r   Úformatr'   ÚcompileÚ	MULTILINEÚVERBOSEr
   r   r   r   r   r   Ú<module>   s     õ