diff options
Diffstat (limited to 'riscos/save.c')
-rw-r--r-- | riscos/save.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/riscos/save.c b/riscos/save.c index a6b40b7f6..4d9c93df6 100644 --- a/riscos/save.c +++ b/riscos/save.c @@ -960,6 +960,12 @@ void ro_gui_save_set_state(struct content *c, gui_save_type save_type, sprintf(icon_buf, "file_%.3x", gui_save_filetype); error = ro_gui_wimp_get_sprite(icon_buf, &sprite); + if (error && error->errnum == error_SPRITE_OP_DOESNT_EXIST) { + /* try the 'unknown' filetype sprite has a fallback */ + memcpy(icon_buf, "file_xxx", 9); + error = ro_gui_wimp_get_sprite(icon_buf, &sprite); + } + if (error) { LOG(("ro_gui_wimp_get_sprite: 0x%x: %s", error->errnum, error->errmess)); |