mirror of
https://github.com/moonlight-stream/moonlight-ios.git
synced 2026-06-18 14:41:14 +00:00
Fix pairing and game quitting issues with GFE 3.10
This commit is contained in:
@@ -38,7 +38,7 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ([serverInfoResp isStatusOk]) {
|
if ([serverInfoResp isStatusOk]) {
|
||||||
if (![[serverInfoResp getStringTag:@"state"] hasSuffix:@"_SERVER_AVAILABLE"]) {
|
if ([[serverInfoResp getStringTag:@"state"] hasSuffix:@"_SERVER_BUSY"]) {
|
||||||
[_callback pairFailed:@"You must stop streaming before attempting to pair."];
|
[_callback pairFailed:@"You must stop streaming before attempting to pair."];
|
||||||
} else if (![[serverInfoResp getStringTag:@"PairStatus"] isEqual:@"1"]) {
|
} else if (![[serverInfoResp getStringTag:@"PairStatus"] isEqual:@"1"]) {
|
||||||
NSString* appversion = [serverInfoResp getStringTag:@"appversion"];
|
NSString* appversion = [serverInfoResp getStringTag:@"appversion"];
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
host.currentGame = [[self getStringTag:TAG_CURRENT_GAME] trim];
|
host.currentGame = [[self getStringTag:TAG_CURRENT_GAME] trim];
|
||||||
|
|
||||||
NSString *state = [[self getStringTag:TAG_STATE] trim];
|
NSString *state = [[self getStringTag:TAG_STATE] trim];
|
||||||
if ([state hasSuffix:@"_SERVER_AVAILABLE"]) {
|
if (![state hasSuffix:@"_SERVER_BUSY"]) {
|
||||||
// GFE 2.8 started keeping currentgame set to the last game played. As a result, it no longer
|
// GFE 2.8 started keeping currentgame set to the last game played. As a result, it no longer
|
||||||
// has the semantics that its name would indicate. To contain the effects of this change as much
|
// has the semantics that its name would indicate. To contain the effects of this change as much
|
||||||
// as possible, we'll force the current game to zero if the server isn't in a streaming session.
|
// as possible, we'll force the current game to zero if the server isn't in a streaming session.
|
||||||
|
|||||||
@@ -440,7 +440,7 @@ static NSMutableSet* hostList;
|
|||||||
ServerInfoResponse* serverInfoResp = [[ServerInfoResponse alloc] init];
|
ServerInfoResponse* serverInfoResp = [[ServerInfoResponse alloc] init];
|
||||||
[hMan executeRequestSynchronously:[HttpRequest requestForResponse:serverInfoResp withUrlRequest:[hMan newServerInfoRequest]
|
[hMan executeRequestSynchronously:[HttpRequest requestForResponse:serverInfoResp withUrlRequest:[hMan newServerInfoRequest]
|
||||||
fallbackError:401 fallbackRequest:[hMan newHttpServerInfoRequest]]];
|
fallbackError:401 fallbackRequest:[hMan newHttpServerInfoRequest]]];
|
||||||
if (![serverInfoResp isStatusOk] || ![[serverInfoResp getStringTag:@"state"] hasSuffix:@"_SERVER_AVAILABLE"]) {
|
if (![serverInfoResp isStatusOk] || [[serverInfoResp getStringTag:@"state"] hasSuffix:@"_SERVER_BUSY"]) {
|
||||||
// On newer GFE versions, the quit request succeeds even though the app doesn't
|
// On newer GFE versions, the quit request succeeds even though the app doesn't
|
||||||
// really quit if another client tries to kill your app. We'll patch the response
|
// really quit if another client tries to kill your app. We'll patch the response
|
||||||
// to look like the old error in that case, so the UI behaves.
|
// to look like the old error in that case, so the UI behaves.
|
||||||
|
|||||||
Reference in New Issue
Block a user