diff options
author | tron <tron@openttd.org> | 2005-08-01 00:14:22 +0000 |
---|---|---|
committer | tron <tron@openttd.org> | 2005-08-01 00:14:22 +0000 |
commit | fc5e2d4861dd10e751e7bc069fad77a1b0ee1513 (patch) | |
tree | bfb1d0b9f54310693b5e429b53d23b1c07727553 | |
parent | fcf5ace08fa0cdbb3c5a7d8f9457dcdb61741481 (diff) | |
download | openttd-fc5e2d4861dd10e751e7bc069fad77a1b0ee1513.tar.xz |
(svn r2775) Deleting a file can fail, display an error message when it happens
-rw-r--r-- | hal.h | 2 | ||||
-rw-r--r-- | misc_gui.c | 4 | ||||
-rw-r--r-- | os2.c | 4 | ||||
-rw-r--r-- | unix.c | 4 | ||||
-rw-r--r-- | win32.c | 4 |
5 files changed, 10 insertions, 8 deletions
@@ -87,7 +87,7 @@ char *FiosBrowseTo(const FiosItem *item); // Return path, free space and stringID StringID FiosGetDescText(const char **path, uint32 *tot); // Delete a name -void FiosDelete(const char *name); +bool FiosDelete(const char *name); // Make a filename from a name void FiosMakeSavegameName(char *buf, const char *name); diff --git a/misc_gui.c b/misc_gui.c index 3f679a5d4..a289c0cfd 100644 --- a/misc_gui.c +++ b/misc_gui.c @@ -1328,7 +1328,9 @@ static void SaveLoadDlgWndProc(Window *w, WindowEvent *e) break; case WE_TIMEOUT: if (HASBIT(w->click_state, 10)) { /* Delete button clicked */ - FiosDelete(WP(w,querystr_d).text.buf); + if (!FiosDelete(WP(w,querystr_d).text.buf)) { + ShowErrorMessage(INVALID_STRING_ID, STR_4008_UNABLE_TO_DELETE_FILE, 0, 0); + } SetWindowDirty(w); BuildFileList(); if (_saveload_mode == SLD_SAVE_GAME) { @@ -415,12 +415,12 @@ void FiosMakeSavegameName(char *buf, const char *name) sprintf(buf, "%s\\%s%s", _fios_path, name, extension); } -void FiosDelete(const char *name) +bool FiosDelete(const char *name) { char path[512]; snprintf(path, lengthof(path), "%s\\%s", _fios_path, name); - unlink(path); + return unlink(path) == 0; } bool FileExists(const char *filename) @@ -353,12 +353,12 @@ void FiosMakeSavegameName(char *buf, const char *name) sprintf(buf, "%s/%s%s", _fios_path, name, extension); } -void FiosDelete(const char *name) +bool FiosDelete(const char *name) { char path[512]; snprintf(path, lengthof(path), "%s/%s", _fios_path, name); - unlink(path); + return unlink(path) == 0; } bool FileExists(const char *filename) @@ -911,12 +911,12 @@ void FiosMakeSavegameName(char *buf, const char *name) sprintf(buf, "%s\\%s%s", _fios_path, name, extension); } -void FiosDelete(const char *name) +bool FiosDelete(const char *name) { char path[512]; snprintf(path, lengthof(path), "%s\\%s", _fios_path, name); - DeleteFile(path); + return DeleteFile(path) != 0; } bool FileExists(const char *filename) |