Allow to build and run GDWebServer in app extensions.

This commit is contained in:
Thomas Mellenthin
2019-03-13 15:26:52 +01:00
parent 7e4dd53c98
commit 653dfb727b

View File

@@ -198,7 +198,7 @@ static void _ExecuteMainThreadRunLoopSources() {
#endif
}
#if TARGET_OS_IPHONE
#if TARGET_OS_IPHONE && !defined TARGET_OS_IPHONE_EXTENSION
// Always called on main thread
- (void)_startBackgroundTask {
@@ -223,7 +223,7 @@ static void _ExecuteMainThreadRunLoopSources() {
_connected = YES;
GWS_LOG_DEBUG(@"Did connect");
#if TARGET_OS_IPHONE
#if TARGET_OS_IPHONE && !defined TARGET_OS_IPHONE_EXTENSION
if ([[UIApplication sharedApplication] applicationState] != UIApplicationStateBackground) {
[self _startBackgroundTask];
}
@@ -253,7 +253,7 @@ static void _ExecuteMainThreadRunLoopSources() {
});
}
#if TARGET_OS_IPHONE
#if TARGET_OS_IPHONE && !defined TARGET_OS_IPHONE_EXTENSION
// Always called on main thread
- (void)_endBackgroundTask {
@@ -277,7 +277,7 @@ static void _ExecuteMainThreadRunLoopSources() {
_connected = NO;
GWS_LOG_DEBUG(@"Did disconnect");
#if TARGET_OS_IPHONE
#if TARGET_OS_IPHONE && !defined TARGET_OS_IPHONE_EXTENSION
[self _endBackgroundTask];
#endif
@@ -726,7 +726,7 @@ static inline NSString* _EncodeBase64(NSString* string) {
- (BOOL)startWithOptions:(NSDictionary<NSString*, id>*)options error:(NSError**)error {
if (_options == nil) {
_options = options ? [options copy] : @{};
#if TARGET_OS_IPHONE
#if TARGET_OS_IPHONE && !defined TARGET_OS_IPHONE_EXTENSION
_suspendInBackground = [(NSNumber*)_GetOption(_options, GCDWebServerOption_AutomaticallySuspendInBackground, @YES) boolValue];
if (((_suspendInBackground == NO) || ([[UIApplication sharedApplication] applicationState] != UIApplicationStateBackground)) && ![self _start:error])
#else