diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/sci/gfx/res_view1.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/engines/sci/gfx/res_view1.cpp b/engines/sci/gfx/res_view1.cpp index 2b0c7439a1..b53702601b 100644 --- a/engines/sci/gfx/res_view1.cpp +++ b/engines/sci/gfx/res_view1.cpp @@ -376,8 +376,13 @@ gfxr_view_t *gfxr_draw_view11(int id, byte *resource, int size) { view->loops_nr = loops_num; view->loops = (gfxr_loop_t *)calloc(view->loops_nr, sizeof(gfxr_loop_t)); - // There is no indication of size here, but this is certainly large enough - view->palette = gfxr_read_pal11(id, resource + palette_offset, 1284); + if (palette_offset > 0) { + // There is no indication of size here, but this is certainly large enough + view->palette = gfxr_read_pal11(id, resource + palette_offset, 1284); + } else { + // View has no palette + view->palette = NULL; + } seeker = resource + header_size; for (i = 0; i < view->loops_nr; i++) { |