mirror of
https://github.com/nunuhara/xsystem4.git
synced 2026-10-11 00:38:18 +03:00
+4
-2
@@ -73,10 +73,12 @@ char *gamedir_path(const char *path)
|
||||
|
||||
char *savedir_path(const char *filename)
|
||||
{
|
||||
char *path = xmalloc(strlen(config.save_dir) + 1 + strlen(filename) + 1);
|
||||
char *utf = sjis2utf(filename, 0);
|
||||
char *path = xmalloc(strlen(config.save_dir) + 1 + strlen(utf) + 1);
|
||||
strcpy(path, config.save_dir);
|
||||
strcat(path, "/");
|
||||
strcat(path, filename);
|
||||
strcat(path, utf);
|
||||
free(utf);
|
||||
return path;
|
||||
}
|
||||
|
||||
|
||||
@@ -487,15 +487,7 @@ static void system_call(enum syscall_code code)
|
||||
}
|
||||
case SYS_EXISTS_SAVE_FILE: {
|
||||
int slot = stack_pop().i;
|
||||
struct string *name = heap[slot].s;
|
||||
size_t dir_len = strlen(config.save_dir);
|
||||
char *path = xmalloc(dir_len + 1 + name->size + 1);
|
||||
|
||||
strncpy(path, config.save_dir, dir_len);
|
||||
path[dir_len] = '/';
|
||||
strncpy(path+dir_len+1, name->text, name->size);
|
||||
path[dir_len+1+name->size] = '\0';
|
||||
|
||||
char *path = savedir_path(heap[slot].s->text);
|
||||
stack_push(file_exists(path));
|
||||
heap_unref(slot);
|
||||
free(path);
|
||||
|
||||
Reference in New Issue
Block a user