mirror of
https://github.com/The-Powder-Toy/The-Powder-Toy.git
synced 2025-09-01 04:01:56 +02:00
Fix command line save opening (save was being cleared immediately after loading)
This commit is contained in:
44
src/main.c
44
src/main.c
@@ -823,30 +823,6 @@ int main(int argc, char *argv[])
|
||||
chdir(argv[i+1]);
|
||||
i++;
|
||||
}
|
||||
else if (!strncmp(argv[i], "open", 5) && i+1<argc)
|
||||
{
|
||||
int size;
|
||||
void *file_data;
|
||||
file_data = file_load(argv[i+1], &size);
|
||||
if (file_data)
|
||||
{
|
||||
svf_last = file_data;
|
||||
svf_lsize = size;
|
||||
if(!parse_save(file_data, size, 1, 0, 0, bmap, fvx, fvy, vx, vy, pv, signs, parts, pmap))
|
||||
{
|
||||
it=0;
|
||||
svf_filename[0] = 0;
|
||||
svf_fileopen = 1;
|
||||
} else {
|
||||
saveOpenError = 1;
|
||||
svf_last = NULL;
|
||||
svf_lsize = 0;
|
||||
free(file_data);
|
||||
file_data = NULL;
|
||||
}
|
||||
}
|
||||
i++;
|
||||
}
|
||||
else if (!strncmp(argv[i], "ptsave", 7) && i+1<argc)
|
||||
{
|
||||
//Prevent reading of any arguments after ptsave for security
|
||||
@@ -899,6 +875,26 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
else if (!strncmp(argv[i], "open", 5) && i+1<argc)
|
||||
{
|
||||
int size;
|
||||
void *file_data;
|
||||
file_data = file_load(argv[i+1], &size);
|
||||
if (file_data)
|
||||
{
|
||||
svf_last = file_data;
|
||||
svf_lsize = size;
|
||||
if(!parse_save(file_data, size, 1, 0, 0, bmap, fvx, fvy, vx, vy, pv, signs, parts, pmap))
|
||||
{
|
||||
it=0;
|
||||
svf_filename[0] = 0;
|
||||
svf_fileopen = 1;
|
||||
} else {
|
||||
saveOpenError = 1;
|
||||
svf_last = NULL;
|
||||
svf_lsize = 0;
|
||||
free(file_data);
|
||||
file_data = NULL;
|
||||
}
|
||||
}
|
||||
i++;
|
||||
}
|
||||
else if (!strncmp(argv[i], "ddir", 5) && i+1<argc)
|
||||
|
Reference in New Issue
Block a user