diff --git a/limelight-common/AudioStream.c b/limelight-common/AudioStream.c index 2968644..252e521 100644 --- a/limelight-common/AudioStream.c +++ b/limelight-common/AudioStream.c @@ -54,7 +54,7 @@ static void UdpPingThreadProc(void *context) { err = sendto(rtpSocket, pingData, sizeof(pingData), 0, (struct sockaddr*)&saddr, sizeof(saddr)); if (err != sizeof(pingData)) { Limelog("UDP ping thread terminating #1\n"); - listenerCallbacks->connectionTerminated(err); + listenerCallbacks->connectionTerminated(LastSocketError()); return; } @@ -77,7 +77,7 @@ static void ReceiveThreadProc(void* context) { if (err <= 0) { Limelog("Receive thread terminating #2\n"); free(buffer); - listenerCallbacks->connectionTerminated(err); + listenerCallbacks->connectionTerminated(LastSocketError()); return; } diff --git a/limelight-common/ControlStream.c b/limelight-common/ControlStream.c index a327bdd..9167229 100644 --- a/limelight-common/ControlStream.c +++ b/limelight-common/ControlStream.c @@ -149,6 +149,7 @@ static void jitterThreadFunc(void* context) { static void resyncThreadFunc(void* context) { long long payload[2]; NVCTL_PACKET_HEADER header; + PNVCTL_PACKET_HEADER response; int err; header.type = PTYPE_RESYNC; @@ -174,6 +175,14 @@ static void resyncThreadFunc(void* context) { return; } + response = readNvctlPacket(); + if (response == NULL) { + Limelog("Resync thread terminating #3\n"); + listenerCallbacks->connectionTerminated(LastSocketError()); + return; + } + Limelog("Resync complete\n"); + PltClearEvent(&resyncEvent); } } diff --git a/limelight-common/PlatformSockets.h b/limelight-common/PlatformSockets.h index 689c66d..210cb5a 100644 --- a/limelight-common/PlatformSockets.h +++ b/limelight-common/PlatformSockets.h @@ -9,18 +9,6 @@ #define SetLastSocketError(x) WSASetLastError(x) #define LastSocketError() WSAGetLastError() -#ifdef LC_WINDOWS_PHONE -#undef WINAPI_FAMILY -#define WINAPI_FAMILY WINAPI_FAMILY_DESKTOP_APP -#endif - -#include - -#ifdef LC_WINDOWS_PHONE -#undef WINAPI_FAMILY -#define WINAPI_FAMILY WINAPI_FAMILY_PHONE_APP -#endif - #else #include #include diff --git a/limelight-common/VideoStream.c b/limelight-common/VideoStream.c index eb6c53b..ce3f852 100644 --- a/limelight-common/VideoStream.c +++ b/limelight-common/VideoStream.c @@ -66,7 +66,7 @@ static void UdpPingThreadProc(void *context) { err = sendto(rtpSocket, pingData, sizeof(pingData), 0, (struct sockaddr*)&saddr, sizeof(saddr)); if (err != sizeof(pingData)) { Limelog("UDP ping thread terminating #1\n"); - listenerCallbacks->connectionTerminated(err); + listenerCallbacks->connectionTerminated(LastSocketError()); return; } @@ -89,7 +89,7 @@ static void ReceiveThreadProc(void* context) { if (err <= 0) { Limelog("Receive thread terminating #2\n"); free(buffer); - listenerCallbacks->connectionTerminated(err); + listenerCallbacks->connectionTerminated(LastSocketError()); return; }