aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/sci/engine/savegame.c66
-rw-r--r--engines/sci/engine/savegame.cfsml2
2 files changed, 36 insertions, 32 deletions
diff --git a/engines/sci/engine/savegame.c b/engines/sci/engine/savegame.c
index 920018e394..00e0ab972e 100644
--- a/engines/sci/engine/savegame.c
+++ b/engines/sci/engine/savegame.c
@@ -43,6 +43,8 @@
#ifdef _WIN32
#pragma warning( disable : 4101 )
+#undef strcasecmp
+#define strcasecmp _stricmp
#endif
#define HUNK_TYPE_GFX_SNAPSHOT_STRING "g\n"
@@ -4126,7 +4128,7 @@ int min, max, i;
/* Auto-generated CFSML declaration and function block ends here */
/* Auto-generation performed by cfsml.pl 0.8.2 */
-#line 402 "savegame.cfsml"
+#line 404 "savegame.cfsml"
void
write_songlib_t(FILE *fh, songlib_t *songlib)
@@ -4146,7 +4148,7 @@ write_songlib_t(FILE *fh, songlib_t *songlib)
_cfsml_write_song_t(fh, seeker);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 417 "savegame.cfsml"
+#line 419 "savegame.cfsml"
seeker = seeker->next;
}
fprintf(fh, "]\n");
@@ -4192,7 +4194,7 @@ read_songlib_t(FILE *fh, songlib_t *songlib, char *lastval, int *line, int *hite
}
}
/* End of auto-generated CFSML data reader code */
-#line 440 "savegame.cfsml"
+#line 442 "savegame.cfsml"
song_lib_add(*songlib, newsong);
}
fscanf(fh, "]\n");
@@ -4239,7 +4241,7 @@ write_int_hash_map_tp(FILE *fh, int_hash_map_t **foo)
_cfsml_write_int_hash_map_t(fh, *foo);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 482 "savegame.cfsml"
+#line 484 "savegame.cfsml"
}
void
@@ -4250,7 +4252,7 @@ write_song_tp(FILE *fh, song_t **foo)
_cfsml_write_song_t(fh, *foo);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 488 "savegame.cfsml"
+#line 490 "savegame.cfsml"
}
song_iterator_t *
@@ -4286,7 +4288,7 @@ read_song_tp(FILE *fh, song_t **foo, char *lastval, int *line, int *hiteof)
}
}
/* End of auto-generated CFSML data reader code */
-#line 501 "savegame.cfsml"
+#line 503 "savegame.cfsml"
(*foo)->delay = 0;
(*foo)->it = NULL;
(*foo)->next_playing = (*foo)->next_stopping = (*foo)->next = NULL;
@@ -4319,7 +4321,7 @@ read_int_hash_map_tp(FILE *fh, int_hash_map_t **foo, char *lastval, int *line, i
}
}
/* End of auto-generated CFSML data reader code */
-#line 511 "savegame.cfsml"
+#line 513 "savegame.cfsml"
(*foo)->holes = NULL;
return 0;
}
@@ -4340,7 +4342,7 @@ write_int_hash_map_node_tp(FILE *fh, int_hash_map_node_t **foo)
write_int_hash_map_node_tp(fh, &((*foo)->next));
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 527 "savegame.cfsml"
+#line 529 "savegame.cfsml"
} else fputc('L', fh);
fputs("]", fh);
}
@@ -4399,7 +4401,7 @@ write_menubar_tp(FILE *fh, menubar_t **foo)
_cfsml_write_menubar_t(fh, (*foo));
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 581 "savegame.cfsml"
+#line 583 "savegame.cfsml"
} else { /* Nothing to write */
fputs("\\null\\", fh);
@@ -4439,7 +4441,7 @@ read_menubar_tp(FILE *fh, menubar_t **foo, char *lastval, int *line, int *hiteof
}
}
/* End of auto-generated CFSML data reader code */
-#line 598 "savegame.cfsml"
+#line 600 "savegame.cfsml"
}
return *hiteof;
@@ -4454,7 +4456,7 @@ write_mem_obj_t(FILE *fh, mem_obj_t *foo)
_cfsml_write_int(fh, &foo->segmgr_id);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 608 "savegame.cfsml"
+#line 610 "savegame.cfsml"
switch (foo->type)
{
case MEM_OBJ_SCRIPT:
@@ -4463,7 +4465,7 @@ write_mem_obj_t(FILE *fh, mem_obj_t *foo)
_cfsml_write_script_t(fh, &foo->data.script);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 612 "savegame.cfsml"
+#line 614 "savegame.cfsml"
break;
case MEM_OBJ_CLONES:
#line 877 "savegame.cfsml"
@@ -4471,7 +4473,7 @@ write_mem_obj_t(FILE *fh, mem_obj_t *foo)
_cfsml_write_clone_table_t(fh, &foo->data.clones);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 615 "savegame.cfsml"
+#line 617 "savegame.cfsml"
break;
case MEM_OBJ_LOCALS:
#line 877 "savegame.cfsml"
@@ -4479,7 +4481,7 @@ write_mem_obj_t(FILE *fh, mem_obj_t *foo)
_cfsml_write_local_variables_t(fh, &foo->data.locals);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 618 "savegame.cfsml"
+#line 620 "savegame.cfsml"
break;
case MEM_OBJ_SYS_STRINGS:
#line 877 "savegame.cfsml"
@@ -4487,7 +4489,7 @@ write_mem_obj_t(FILE *fh, mem_obj_t *foo)
_cfsml_write_sys_strings_t(fh, &foo->data.sys_strings);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 621 "savegame.cfsml"
+#line 623 "savegame.cfsml"
break;
case MEM_OBJ_STACK:
#line 877 "savegame.cfsml"
@@ -4495,7 +4497,7 @@ write_mem_obj_t(FILE *fh, mem_obj_t *foo)
_cfsml_write_int(fh, &foo->data.stack.nr);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 624 "savegame.cfsml"
+#line 626 "savegame.cfsml"
break;
case MEM_OBJ_HUNK:
break;
@@ -4505,7 +4507,7 @@ write_mem_obj_t(FILE *fh, mem_obj_t *foo)
_cfsml_write_list_table_t(fh, &foo->data.lists);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 629 "savegame.cfsml"
+#line 631 "savegame.cfsml"
break;
case MEM_OBJ_NODES:
#line 877 "savegame.cfsml"
@@ -4513,7 +4515,7 @@ write_mem_obj_t(FILE *fh, mem_obj_t *foo)
_cfsml_write_node_table_t(fh, &foo->data.nodes);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 632 "savegame.cfsml"
+#line 634 "savegame.cfsml"
break;
case MEM_OBJ_DYNMEM:
#line 877 "savegame.cfsml"
@@ -4521,7 +4523,7 @@ write_mem_obj_t(FILE *fh, mem_obj_t *foo)
_cfsml_write_dynmem_t(fh, &foo->data.dynmem);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 635 "savegame.cfsml"
+#line 637 "savegame.cfsml"
break;
}
}
@@ -4561,7 +4563,7 @@ read_mem_obj_t(FILE *fh, mem_obj_t *foo, char *lastval, int *line, int *hiteof)
}
}
/* End of auto-generated CFSML data reader code */
-#line 651 "savegame.cfsml"
+#line 653 "savegame.cfsml"
switch (foo->type)
{
case MEM_OBJ_SCRIPT:
@@ -4589,7 +4591,7 @@ read_mem_obj_t(FILE *fh, mem_obj_t *foo, char *lastval, int *line, int *hiteof)
}
}
/* End of auto-generated CFSML data reader code */
-#line 655 "savegame.cfsml"
+#line 657 "savegame.cfsml"
break;
case MEM_OBJ_CLONES:
/* Auto-generated CFSML data reader code */
@@ -4616,7 +4618,7 @@ read_mem_obj_t(FILE *fh, mem_obj_t *foo, char *lastval, int *line, int *hiteof)
}
}
/* End of auto-generated CFSML data reader code */
-#line 658 "savegame.cfsml"
+#line 660 "savegame.cfsml"
break;
case MEM_OBJ_LOCALS:
/* Auto-generated CFSML data reader code */
@@ -4643,7 +4645,7 @@ read_mem_obj_t(FILE *fh, mem_obj_t *foo, char *lastval, int *line, int *hiteof)
}
}
/* End of auto-generated CFSML data reader code */
-#line 661 "savegame.cfsml"
+#line 663 "savegame.cfsml"
break;
case MEM_OBJ_SYS_STRINGS:
/* Auto-generated CFSML data reader code */
@@ -4670,7 +4672,7 @@ read_mem_obj_t(FILE *fh, mem_obj_t *foo, char *lastval, int *line, int *hiteof)
}
}
/* End of auto-generated CFSML data reader code */
-#line 664 "savegame.cfsml"
+#line 666 "savegame.cfsml"
break;
case MEM_OBJ_LISTS:
/* Auto-generated CFSML data reader code */
@@ -4697,7 +4699,7 @@ read_mem_obj_t(FILE *fh, mem_obj_t *foo, char *lastval, int *line, int *hiteof)
}
}
/* End of auto-generated CFSML data reader code */
-#line 667 "savegame.cfsml"
+#line 669 "savegame.cfsml"
break;
case MEM_OBJ_NODES:
/* Auto-generated CFSML data reader code */
@@ -4724,7 +4726,7 @@ read_mem_obj_t(FILE *fh, mem_obj_t *foo, char *lastval, int *line, int *hiteof)
}
}
/* End of auto-generated CFSML data reader code */
-#line 670 "savegame.cfsml"
+#line 672 "savegame.cfsml"
break;
case MEM_OBJ_STACK:
/* Auto-generated CFSML data reader code */
@@ -4751,7 +4753,7 @@ read_mem_obj_t(FILE *fh, mem_obj_t *foo, char *lastval, int *line, int *hiteof)
}
}
/* End of auto-generated CFSML data reader code */
-#line 673 "savegame.cfsml"
+#line 675 "savegame.cfsml"
foo->data.stack.entries = (reg_t *)sci_calloc(foo->data.stack.nr, sizeof(reg_t));
break;
case MEM_OBJ_HUNK:
@@ -4782,7 +4784,7 @@ read_mem_obj_t(FILE *fh, mem_obj_t *foo, char *lastval, int *line, int *hiteof)
}
}
/* End of auto-generated CFSML data reader code */
-#line 680 "savegame.cfsml"
+#line 682 "savegame.cfsml"
break;
}
@@ -4799,7 +4801,7 @@ write_mem_obj_tp(FILE *fh, mem_obj_t **foo)
write_mem_obj_t(fh, (*foo));
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 692 "savegame.cfsml"
+#line 694 "savegame.cfsml"
} else { /* Nothing to write */
fputs("\\null\\", fh);
@@ -4837,7 +4839,7 @@ read_mem_obj_tp(FILE *fh, mem_obj_t **foo, char *lastval, int *line, int *hiteof
}
}
/* End of auto-generated CFSML data reader code */
-#line 707 "savegame.cfsml"
+#line 709 "savegame.cfsml"
return *hiteof;
}
return 0;
@@ -4909,7 +4911,7 @@ SCI_MEMTEST;
_cfsml_write_state_t(fh, s);
fprintf(fh, "\n");
/* End of auto-generated CFSML data writer code */
-#line 774 "savegame.cfsml"
+#line 776 "savegame.cfsml"
SCI_MEMTEST;
fclose(fh);
@@ -5282,7 +5284,7 @@ gamestate_restore(state_t *s, char *dirname)
}
}
/* End of auto-generated CFSML data reader code */
-#line 1117 "savegame.cfsml"
+#line 1119 "savegame.cfsml"
fclose(fh);
diff --git a/engines/sci/engine/savegame.cfsml b/engines/sci/engine/savegame.cfsml
index 5b3abafb13..d0d9680351 100644
--- a/engines/sci/engine/savegame.cfsml
+++ b/engines/sci/engine/savegame.cfsml
@@ -43,6 +43,8 @@
#ifdef _WIN32
#pragma warning( disable : 4101 )
+#undef strcasecmp
+#define strcasecmp _stricmp
#endif
#define HUNK_TYPE_GFX_SNAPSHOT_STRING "g\n"