Skip to content
This repository has been archived by the owner on Feb 19, 2020. It is now read-only.

Commit

Permalink
Revert to PLCrashReporter 1.2 due to namespace collisions in PLCrashR…
Browse files Browse the repository at this point in the history
…eporter 1.3
  • Loading branch information
Benjamin Scholtysik (Reimold) committed Feb 10, 2017
1 parent 3086348 commit f2cb7ae
Show file tree
Hide file tree
Showing 8 changed files with 27 additions and 96 deletions.
Binary file modified Vendor/CrashReporter.framework/Versions/A/CrashReporter
Binary file not shown.
Expand Up @@ -95,13 +95,7 @@ typedef enum {
PLCrashReporterErrorCrashReportInvalid = 2,

/** An attempt to use a resource which was in use at the time in a manner which would have conflicted with the request. */
PLCrashReporterErrorResourceBusy = 3,

/** The requested resource could not be found. */
PLCRashReporterErrorNotFound = 4,

/** Allocation failed. */
PLCRashReporterErrorInsufficientMemory = 4
PLCrashReporterErrorResourceBusy = 3
} PLCrashReporterError;


Expand Down
Expand Up @@ -83,8 +83,12 @@
*
* For more information on the potential issues with enabling mach exception support, @sa @ref mach_exceptions.
*/
#if TARGET_OS_TV
# define PLCRASH_FEATURE_MACH_EXCEPTIONS 0
#else
# define PLCRASH_FEATURE_MACH_EXCEPTIONS 1
#endif
#endif

#ifndef PLCRASH_FEATURE_UNWIND_DWARF
/** If true, enable DWARF unwinding support. */
Expand Down
50 changes: 0 additions & 50 deletions Vendor/CrashReporter.framework/Versions/A/Headers/PLCrashMacros.h
Expand Up @@ -52,12 +52,6 @@
# define PLCR_CPP_BEGIN_NS namespace plcrash {
# define PLCR_CPP_END_NS }
# endif
#
/** @internal Define the plcrash::async namespace, automatically inserting an inline namespace containing the configured PLCRASHREPORTER_PREFIX, if any. */
# define PLCR_CPP_BEGIN_ASYNC_NS PLCR_CPP_BEGIN_NS namespace async {

/** @internal Close the definition of the `plcrash::async` namespace (and the PLCRASHREPORTER_PREFIX inline namespace, if any). */
# define PLCR_CPP_END_ASYNC_NS PLCR_CPP_END_NS }
#endif

#ifdef __clang__
Expand All @@ -66,56 +60,12 @@
# define PLCR_PRAGMA_CLANG(_p)
#endif

#ifdef __clang__
# define PLCR_DEPRECATED __attribute__((deprecated))
#else
# define PLCR_DEPRECATED
#endif

#if defined(__clang__) || defined(__GNUC__)
# define PLCR_UNUSED __attribute__((unused))
#else
# define PLCR_UNUSED
#endif

#ifdef PLCR_PRIVATE
/**
* Marks a definition as deprecated only for for external clients, allowing
* uses of it internal fo the framework.
*/
#define PLCR_EXTERNAL_DEPRECATED

/**
* @internal
* A macro to put above a definition marked PLCR_EXTERNAL_DEPRECATED that will
* silence warnings about there being a deprecation documentation marker but the
* definition not being marked deprecated.
*/
# define PLCR_EXTERNAL_DEPRECATED_NOWARN_PUSH() \
PLCR_PRAGMA_CLANG("clang diagnostic push"); \
PLCR_PRAGMA_CLANG("clang diagnostic ignored \"-Wdocumentation-deprecated-sync\"")

/**
* @internal
* A macro to put below a definition marked PLCR_EXTERNAL_DEPRECATED that will
* silence warnings about there being a deprecation documentation marker but the
* definition not being marked deprecated.
*/
# define PLCR_EXTERNAL_DEPRECATED_NOWARN_POP() PLCR_PRAGMA_CLANG("clang diagnostic pop")
#else
# define PLCR_EXTERNAL_DEPRECATED PLCR_DEPRECATED
# define PLCR_EXTERNAL_DEPRECATED_NOWARN_PUSH()
# define PLCR_EXTERNAL_DEPRECATED_NOWARN_PUSH()
#endif /* PLCR_PRIVATE */

#ifdef PLCR_PRIVATE
# if defined(__clang__) && __has_feature(cxx_attributes) && __has_warning("-Wimplicit-fallthrough")
# define PLCR_FALLTHROUGH [[clang::fallthrough]]
# else
# define PLCR_FALLTHROUGH do {} while (0)
# endif
#endif

#ifdef PLCR_PRIVATE
/**
* @internal
Expand Down
Expand Up @@ -35,7 +35,7 @@
* This may be used to avoid symbol conflicts between multiple libraries
* that may both incorporate PLCrashReporter.
*/
#define PLCRASHREPORTER_PREFIX BIT
#define PLCRASHREPORTER_PREFIX BIT


// We need two extra layers of indirection to make CPP substitute
Expand Down Expand Up @@ -247,8 +247,8 @@
#define plcrash_nasync_image_list_free PLNS(plcrash_nasync_image_list_free)
#define plcrash_nasync_image_list_init PLNS(plcrash_nasync_image_list_init)
#define plcrash_nasync_image_list_remove PLNS(plcrash_nasync_image_list_remove)
#define plcrash_async_macho_free PLNS(plcrash_async_macho_free)
#define plcrash_async_macho_init PLNS(plcrash_async_macho_init)
#define plcrash_nasync_macho_free PLNS(plcrash_nasync_macho_free)
#define plcrash_nasync_macho_init PLNS(plcrash_nasync_macho_init)
#define plcrash_populate_error PLNS(plcrash_populate_error)
#define plcrash_populate_mach_error PLNS(plcrash_populate_mach_error)
#define plcrash_populate_posix_error PLNS(plcrash_populate_posix_error)
Expand Down
Expand Up @@ -27,8 +27,6 @@
*/

#import <Foundation/Foundation.h>
#include "PLCrashMacros.h"
@class PLCrashReportProcessorInfo;

/**
* @ingroup constants
Expand All @@ -50,14 +48,18 @@ typedef enum {

/** Unknown operating system */
PLCrashReportOperatingSystemUnknown = 3,

/** tvOS */
PLCrashReportOperatingSystemtvOS = 4,

} PLCrashReportOperatingSystem;

/**
* @ingroup constants
*
* Indicates the architecture under which a Crash Log was generated.
*
* @note The architecture value has been deprecated in v1.1 and later crash reports. All new reports
* @deprecated The architecture value has been deprecated in v1.1 and later crash reports. All new reports
* will make use of the new PLCrashReportProcessorInfo CPU type encodings.
*
* @internal
Expand All @@ -79,7 +81,7 @@ typedef enum {
* values.
* @sa PLCrashReportArchitectureARMv6
*/
PLCrashReportArchitectureARM PLCR_DEPRECATED = PLCrashReportArchitectureARMv6,
PLCrashReportArchitectureARM = PLCrashReportArchitectureARMv6,

/** PPC */
PLCrashReportArchitecturePPC = 3,
Expand All @@ -96,9 +98,7 @@ typedef enum {


extern PLCrashReportOperatingSystem PLCrashReportHostOperatingSystem;
PLCR_EXTERNAL_DEPRECATED_NOWARN_PUSH();
extern PLCrashReportArchitecture PLCrashReportHostArchitecture PLCR_EXTERNAL_DEPRECATED;
PLCR_EXTERNAL_DEPRECATED_NOWARN_PUSH();
extern PLCrashReportArchitecture PLCrashReportHostArchitecture;

@interface PLCrashReportSystemInfo : NSObject {
@private
Expand All @@ -116,27 +116,17 @@ PLCR_EXTERNAL_DEPRECATED_NOWARN_PUSH();

/** Date crash report was generated. May be nil if the date is unknown. */
NSDate *_timestamp;

/** Processor information. */
PLCrashReportProcessorInfo *_processorInfo;
}

- (id) initWithOperatingSystem: (PLCrashReportOperatingSystem) operatingSystem
operatingSystemVersion: (NSString *) operatingSystemVersion
architecture: (PLCrashReportArchitecture) architecture
timestamp: (NSDate *) timestamp PLCR_DEPRECATED;
timestamp: (NSDate *) timestamp;

- (id) initWithOperatingSystem: (PLCrashReportOperatingSystem) operatingSystem
operatingSystemVersion: (NSString *) operatingSystemVersion
operatingSystemBuild: (NSString *) operatingSystemBuild
architecture: (PLCrashReportArchitecture) architecture
timestamp: (NSDate *) timestamp PLCR_DEPRECATED;

- (id) initWithOperatingSystem: (PLCrashReportOperatingSystem) operatingSystem
operatingSystemVersion: (NSString *) operatingSystemVersion
operatingSystemBuild: (NSString *) operatingSystemBuild
architecture: (PLCrashReportArchitecture) architecture
processorInfo: (PLCrashReportProcessorInfo *) processorInfo
timestamp: (NSDate *) timestamp;

/** The operating system. */
Expand All @@ -151,13 +141,9 @@ PLCR_EXTERNAL_DEPRECATED_NOWARN_PUSH();
/** Architecture. @deprecated The architecture value has been deprecated in v1.1 and later crash reports. All new reports
* include the CPU type as part of the crash report's machine info structure, using the PLCrashReportProcessorInfo
* extensible encoding. */
@property(nonatomic, readonly) PLCrashReportArchitecture architecture PLCR_DEPRECATED;
@property(nonatomic, readonly) PLCrashReportArchitecture architecture;

/** Date and time that the crash report was generated. This may be unavailable, and this property will be nil. */
@property(nonatomic, readonly) NSDate *timestamp;

/** The processor type. For v1.2 reports and later, this is an alias to the machine info's processorInfo.
* For earlier reports, this will be synthesized from the deprecated architecture property. */
@property(nonatomic, readonly) PLCrashReportProcessorInfo *processorInfo;

@end
Expand Up @@ -30,7 +30,6 @@
#import <mach/mach.h>

#import "PLCrashReporterConfig.h"
#import "PLCrashMacros.h"

@class PLCrashMachExceptionServer;
@class PLCrashMachExceptionPortSet;
Expand All @@ -45,7 +44,7 @@
* @param uap The crash's threads context.
* @param context The API client's supplied context value.
*
* @sa The @ref async_safety documentation.
* @sa @ref async_safety
* @sa PLCrashReporter::setPostCrashCallbacks:
*/
typedef void (*PLCrashReporterPostCrashSignalCallback)(siginfo_t *info, ucontext_t *uap, void *context);
Expand All @@ -56,7 +55,7 @@ typedef void (*PLCrashReporterPostCrashSignalCallback)(siginfo_t *info, ucontext
* This structure contains callbacks supported by PLCrashReporter to allow the host application to perform
* additional tasks prior to program termination after a crash has occured.
*
* @sa The @ref async_safety documentation.
* @sa @ref async_safety
*/
typedef struct PLCrashReporterCallbacks {
/** The version number of this structure. If not one of the defined version numbers for this type, the behavior
Expand Down Expand Up @@ -88,7 +87,7 @@ typedef struct PLCrashReporterCallbacks {

/** YES if the crash reporter has been enabled */
BOOL _enabled;

#if PLCRASH_FEATURE_MACH_EXCEPTIONS
/** The backing Mach exception server, if any. Nil if the reporter has not been enabled, or if
* the configured signal handler type is not PLCrashReporterSignalHandlerTypeMach. */
Expand All @@ -111,7 +110,7 @@ typedef struct PLCrashReporterCallbacks {
NSString *_crashReportDirectory;
}

+ (PLCrashReporter *) sharedReporter PLCR_DEPRECATED;
+ (PLCrashReporter *) sharedReporter;

- (instancetype) initWithConfiguration: (PLCrashReporterConfig *) config;

Expand All @@ -122,11 +121,9 @@ typedef struct PLCrashReporterCallbacks {

- (NSData *) generateLiveReportWithThread: (thread_t) thread;
- (NSData *) generateLiveReportWithThread: (thread_t) thread error: (NSError **) outError;
- (NSData *) generateLiveReportWithThread: (thread_t) thread exception: (NSException *) exception error: (NSError **) outError;

- (NSData *) generateLiveReport;
- (NSData *) generateLiveReportAndReturnError: (NSError **) outError;
- (NSData *) generateLiveReportWithException: (NSException *) exception error: (NSError **) outError;

- (BOOL) purgePendingCrashReport;
- (BOOL) purgePendingCrashReportAndReturnError: (NSError **) outError;
Expand Down
12 changes: 6 additions & 6 deletions Vendor/CrashReporter.framework/Versions/A/Resources/Info.plist
Expand Up @@ -3,7 +3,7 @@
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
<string>15G1004</string>
<string>15G1217</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
Expand All @@ -27,16 +27,16 @@
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
<string>7D1014</string>
<string>8C1002</string>
<key>DTPlatformVersion</key>
<string>GM</string>
<key>DTSDKBuild</key>
<string>15E60</string>
<string>16C58</string>
<key>DTSDKName</key>
<string>macosx10.11</string>
<string>macosx10.12</string>
<key>DTXcode</key>
<string>0731</string>
<string>0821</string>
<key>DTXcodeBuild</key>
<string>7D1014</string>
<string>8C1002</string>
</dict>
</plist>

0 comments on commit f2cb7ae

Please sign in to comment.