DEADSOFTWARE

net: call sfs gc collect in resource downloader
[d2df-sdl.git] / src / game / g_res_downloader.pas
index 85438c474b4cae73bb9774cb945c740e9d792cb3..43a60874b997d9d50f812922f0d40d1a09ec44c9 100644 (file)
@@ -358,6 +358,7 @@ var
 begin
   result := '';
   clearReplacementWads();
+  sfsGCCollect(); // why not?
   g_Res_CreateDatabases();
 
   try
@@ -391,17 +392,18 @@ begin
       end;
       fname := GameDir+'/maps/downloads/'+generateFileName(FileName, mapHash);
       tf.diskName := fname;
+      e_LogWritefln('map disk file for `%s` is `%s`', [FileName, fname], TMsgType.Fatal);
       try
         strm := openDiskFileRW(fname);
       except
-        e_WriteLog('cannot create map file `'+FileName+'`', TMsgType.Fatal);
+        e_WriteLog('cannot create map file `'+fname+'`', TMsgType.Fatal);
         result := '';
         exit;
       end;
       try
         res := g_Net_ReceiveResourceFile(-1{map}, tf, strm);
       except
-        e_WriteLog('error downloading map file `'+FileName+'`', TMsgType.Fatal);
+        e_WriteLog('error downloading map file (exception) `'+FileName+'`', TMsgType.Fatal);
         strm.Free;
         result := '';
         exit;
@@ -409,7 +411,7 @@ begin
       strm.Free;
       if (res <> 0) then
       begin
-        e_WriteLog('error downloading map file `'+FileName+'`', TMsgType.Fatal);
+        e_LogWritefln('error downloading map `%s` (res=%d)', [FileName, res], TMsgType.Fatal);
         result := '';
         exit;
       end;
@@ -425,7 +427,7 @@ begin
             DeleteFile(fname);
             strm := createDiskFile(fname);
           except
-            e_WriteLog('cannot create map file `'+fname+'`', TMsgType.Fatal);
+            e_WriteLog('cannot create map file `'+fname+'` (exception)', TMsgType.Fatal);
             result := '';
             exit;
           end;
@@ -440,7 +442,7 @@ begin
           strm.Free;
           if (res <> 0) then
           begin
-            e_WriteLog('error downloading map file `'+FileName+'`', TMsgType.Fatal);
+            e_LogWritefln('error downloading map `%s` (res=%d)', [FileName, res], TMsgType.Fatal);
             result := '';
             exit;
           end;