Gamedata query no longer detects a failed query as a crash.
Gamedata query no longer detects a failed query as a crash.
1.1 --- a/core/GameDataFetcher.cpp Wed Jul 02 01:34:46 2008 +0000
1.2 +++ b/core/GameDataFetcher.cpp Wed Jul 02 02:57:08 2008 +0000
1.3 @@ -111,6 +111,8 @@
1.4
1.5 if (socketDescriptor == INVALID_SOCKET)
1.6 {
1.7 + fclose(logfile);
1.8 + unlink(lock_path);
1.9 return;
1.10 }
1.11
1.12 @@ -122,12 +124,20 @@
1.13 if (len == 0)
1.14 {
1.15 g_Logger.LogToOpenFile(logfile, "Query Writing failed");
1.16 +
1.17 + closesocket(socketDescriptor);
1.18 + fclose(logfile);
1.19 + unlink(lock_path);
1.20 return;
1.21 }
1.22
1.23 if (g_disableGameDataUpdate)
1.24 {
1.25 g_Logger.LogMessage("Skipping GameData Query due to DisableAutoUpdate being set to true");
1.26 +
1.27 + closesocket(socketDescriptor);
1.28 + fclose(logfile);
1.29 + unlink(lock_path);
1.30 return;
1.31 }
1.32
1.33 @@ -138,7 +148,10 @@
1.34 if (sent == 0)
1.35 {
1.36 g_Logger.LogToOpenFile(logfile, "Failed to send data");
1.37 +
1.38 closesocket(socketDescriptor);
1.39 + fclose(logfile);
1.40 + unlink(lock_path);
1.41 return;
1.42 }
1.43
1.44 @@ -146,10 +159,7 @@
1.45
1.46 /* And we're done! */
1.47 closesocket(socketDescriptor);
1.48 -
1.49 fclose(logfile);
1.50 -
1.51 - // Delete our lock
1.52 unlink(lock_path);
1.53 }
1.54