summaryrefslogtreecommitdiff
path: root/riscos/download.c
diff options
context:
space:
mode:
authorJames Bursa <james@netsurf-browser.org>2004-08-25 22:11:14 +0000
committerJames Bursa <james@netsurf-browser.org>2004-08-25 22:11:14 +0000
commit6e795f9cb5ebf9d9c6c0a062e117dc35c5870ec2 (patch)
treecd6eedfc53311b4ca46aa70f7a03fe61950be69a /riscos/download.c
parent7ee3ef6189cfeb21af2c280627ea8db3b80c4fab (diff)
downloadnetsurf-6e795f9cb5ebf9d9c6c0a062e117dc35c5870ec2.tar.gz
netsurf-6e795f9cb5ebf9d9c6c0a062e117dc35c5870ec2.tar.bz2
[project @ 2004-08-25 22:11:14 by bursa]
Handle some more expected errors when renaming file during download (fixes #1014444). svn path=/import/netsurf/; revision=1248
Diffstat (limited to 'riscos/download.c')
-rw-r--r--riscos/download.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/riscos/download.c b/riscos/download.c
index 77aa9a217..c036c13bb 100644
--- a/riscos/download.c
+++ b/riscos/download.c
@@ -577,7 +577,10 @@ void ro_gui_download_datasave_ack(wimp_message *message)
/* move or copy temporary file to destination file */
error = xosfscontrol_rename(temp_name, file_name);
- if (error && error->errnum == error_BAD_RENAME) {
+ /* Errors from a filing system have number 0x1XXnn, where XX is the FS
+ * number, and nn the error number. 0x9F is "Not same disc". */
+ if (error && (error->errnum == error_BAD_RENAME ||
+ (error->errnum & 0xFF00FFu) == 0x1009Fu)) {
/* rename failed: copy with delete */
error = xosfscontrol_copy(temp_name, file_name,
osfscontrol_COPY_FORCE |