Crashpad
 
Loading...
Searching...
No Matches
crashpad::ObjcExceptionDelegate Class Referenceabstract

An interface for notifying the CrashpadClient of NSExceptions. More...

#include "client/ios_handler/exception_processor.h"

Public Member Functions

virtual void HandleUncaughtNSExceptionWithContext (NativeCPUContext *context)=0
 The exception processor detected an exception as it was thrown and captured the cpu context.
 
virtual void HandleUncaughtNSException (const uint64_t *frames, const size_t num_frames)=0
 The exception processor did not detect the exception as it was thrown, and instead caught the exception via the NSUncaughtExceptionHandler.
 
virtual void HandleUncaughtNSExceptionWithContextAtPath (NativeCPUContext *context, const base::FilePath &path)=0
 Generate an intermediate dump from an NSException caught with its associated CPU context. Because the method for intercepting exceptions is imperfect, write the the intermediate dump to a temporary location specified by path. If the NSException matches the one used in the UncaughtExceptionHandler, call MoveIntermediateDumpAtPathToPending to move to the proper Crashpad database pending location.
 
virtual bool MoveIntermediateDumpAtPathToPending (const base::FilePath &path)=0
 Moves an intermediate dump to the pending directory. This is meant to be used by the UncaughtExceptionHandler, when the NSException caught by the preprocessor matches the UncaughtExceptionHandler.
 

Detailed Description

An interface for notifying the CrashpadClient of NSExceptions.

Member Function Documentation

◆ HandleUncaughtNSException()

virtual void crashpad::ObjcExceptionDelegate::HandleUncaughtNSException ( const uint64_t * frames,
const size_t num_frames )
pure virtual

The exception processor did not detect the exception as it was thrown, and instead caught the exception via the NSUncaughtExceptionHandler.

Parameters
framesAn array of call stack frame addresses.
num_framesThe number of frames in |frames|.

◆ HandleUncaughtNSExceptionWithContext()

virtual void crashpad::ObjcExceptionDelegate::HandleUncaughtNSExceptionWithContext ( NativeCPUContext * context)
pure virtual

The exception processor detected an exception as it was thrown and captured the cpu context.

Parameters
contextThe cpu context of the thread throwing an exception.

◆ HandleUncaughtNSExceptionWithContextAtPath()

virtual void crashpad::ObjcExceptionDelegate::HandleUncaughtNSExceptionWithContextAtPath ( NativeCPUContext * context,
const base::FilePath & path )
pure virtual

Generate an intermediate dump from an NSException caught with its associated CPU context. Because the method for intercepting exceptions is imperfect, write the the intermediate dump to a temporary location specified by path. If the NSException matches the one used in the UncaughtExceptionHandler, call MoveIntermediateDumpAtPathToPending to move to the proper Crashpad database pending location.

Parameters
[in]contextThe cpu context of the thread throwing an exception.
[in]pathPath to write the intermediate dump.

◆ MoveIntermediateDumpAtPathToPending()

virtual bool crashpad::ObjcExceptionDelegate::MoveIntermediateDumpAtPathToPending ( const base::FilePath & path)
pure virtual

Moves an intermediate dump to the pending directory. This is meant to be used by the UncaughtExceptionHandler, when the NSException caught by the preprocessor matches the UncaughtExceptionHandler.

Parameters
[in]pathPath to the specific intermediate dump.

The documentation for this class was generated from the following file: