server_scores.uploaded = FALSE;
}
-static void AutoPlayTapes_WaitForUpload(void)
+static boolean AutoPlayTapes_WaitForUpload(void)
{
unsigned int upload_delay = 0;
unsigned int upload_delay_value = 10000;
PrintNoLog("\r");
Print("- uploading score tape to score server - TIMEOUT.\n");
- Fail("cannot upload score tape to score server");
+ if (program.headless)
+ Fail("cannot upload score tape to score server");
+
+ return FALSE;
}
UPDATE_BUSY_STATE();
PrintNoLog("\r");
Print("- uploading score tape to score server - uploaded.\n");
+
+ return TRUE;
}
static int AutoPlayTapesExt(boolean initialize)
// * solution tape may have native format (like Supaplex solution files)
SaveScoreTape(level_nr);
- SaveServerScore(level_nr);
+ SaveServerScore(level_nr, TRUE);
AutoPlayTapes_WaitForUpload();
}
global.autoplay_level[tape.level_nr] = TRUE;
global.autoplay_all = FALSE;
+ options.mytapes = FALSE;
}
if (autoplay.all_levelsets)
if (!global.autoplay_all && !global.autoplay_level[level_nr])
continue;
- char *tape_filename = (autoplay.tape_filename ? autoplay.tape_filename :
- options.mytapes ? getTapeFilename(level_nr) :
- getSolutionTapeFilename(level_nr));
-
- // speed things up in case of missing tapes (by skipping loading level)
- if (!fileExists(tape_filename))
+ // speed things up in case of missing private tapes (skip loading level)
+ if (options.mytapes && !fileExists(getTapeFilename(level_nr)))
{
autoplay.num_tape_missing++;
{
autoplay.num_tape_missing++;
- Print("Tape %03d: (invalid tape)\n", level_nr);
+ Print("Tape %03d: (no tape found)\n", level_nr);
continue;
}
}
}
- SaveServerScoreFromFile(level_nr, autoplay.tape_filename);
+ SaveServerScoreFromFile(level_nr, TRUE, autoplay.tape_filename);
- AutoPlayTapes_WaitForUpload();
+ boolean success = AutoPlayTapes_WaitForUpload();
if (use_temporary_tape_file)
unlink(autoplay.tape_filename);
// required for uploading multiple tapes
autoplay.tape_filename = NULL;
+ if (!success)
+ {
+ num_tapes = -1;
+
+ break;
+ }
+
continue;
}
{
Print("\n");
PrintLine("=", 79);
- Print("SUMMARY: %d tapes uploaded.\n", num_tapes);
+
+ if (num_tapes >= 0)
+ Print("SUMMARY: %d tapes uploaded.\n", num_tapes);
+ else
+ Print("SUMMARY: Uploading tapes failed.\n");
+
PrintLine("=", 79);
}