From 2e52ee380c8ff5c8bebafa18e8c92b2d7b8a1b69 Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Mon, 16 Feb 2004 20:42:49 +0000 Subject: [project @ 2004-02-16 20:42:49 by jmb] Remove hard-coded sprite offset nastiness. Why this ever worked is confusing... svn path=/import/netsurf/; revision=554 --- riscos/gif.c | 12 ++++++++---- riscos/jpeg.c | 9 ++++++--- 2 files changed, 14 insertions(+), 7 deletions(-) (limited to 'riscos') diff --git a/riscos/gif.c b/riscos/gif.c index 1363730fc..c827f19c7 100644 --- a/riscos/gif.c +++ b/riscos/gif.c @@ -76,7 +76,8 @@ int nsgif_convert(struct content *c, unsigned int iwidth, unsigned int iheight) } c->data.gif.sprite_area = area; - header = (osspriteop_header*)(c->data.gif.sprite_area + 1); + header = (osspriteop_header*)((char*)c->data.gif.sprite_area + + c->data.gif.sprite_area->first); f = a->pFrames + 0; img = (pixel*)header + header->image; mask = (pixel*)header + header->mask; @@ -140,14 +141,16 @@ void nsgif_redraw(struct content *c, long x, long y, xcolourtrans_generate_table_for_sprite(c->data.gif.sprite_area, - (osspriteop_id) (c->data.gif.sprite_area + 1), + (osspriteop_id) ((char*)c->data.gif.sprite_area + + c->data.gif.sprite_area->first), colourtrans_CURRENT_MODE, colourtrans_CURRENT_PALETTE, 0, colourtrans_GIVEN_SPRITE, 0, 0, &size); table = xcalloc(size, 1); xcolourtrans_generate_table_for_sprite(c->data.gif.sprite_area, - (osspriteop_id) (c->data.gif.sprite_area + 1), + (osspriteop_id) ((char*)c->data.gif.sprite_area + + c->data.gif.sprite_area->first), colourtrans_CURRENT_MODE, colourtrans_CURRENT_PALETTE, table, colourtrans_GIVEN_SPRITE, 0, 0, 0); @@ -158,7 +161,8 @@ void nsgif_redraw(struct content *c, long x, long y, xosspriteop_put_sprite_scaled(osspriteop_PTR, c->data.gif.sprite_area, - (osspriteop_id) (c->data.gif.sprite_area + 1), + (osspriteop_id) ((char*)c->data.gif.sprite_area + + c->data.gif.sprite_area->first), x, (int)(y - height), /* osspriteop_USE_PALETTE is RO 3.5+ only. * behaviour on RO < 3.5 is unknown... diff --git a/riscos/jpeg.c b/riscos/jpeg.c index 050030ca7..0da212682 100644 --- a/riscos/jpeg.c +++ b/riscos/jpeg.c @@ -349,20 +349,23 @@ void nsjpeg_redraw(struct content *c, long x, long y, } xcolourtrans_generate_table_for_sprite(c->data.jpeg.sprite_area, - (osspriteop_id) (c->data.jpeg.sprite_area + 1), + (osspriteop_id) ((char*)c->data.jpeg.sprite_area + + c->data.jpeg.sprite_area->first), colourtrans_CURRENT_MODE, colourtrans_CURRENT_PALETTE, 0, colourtrans_GIVEN_SPRITE, 0, 0, &size); table = xcalloc(size, 1); xcolourtrans_generate_table_for_sprite(c->data.jpeg.sprite_area, - (osspriteop_id) (c->data.jpeg.sprite_area + 1), + (osspriteop_id) ((char*)c->data.jpeg.sprite_area + + c->data.jpeg.sprite_area->first), colourtrans_CURRENT_MODE, colourtrans_CURRENT_PALETTE, table, colourtrans_GIVEN_SPRITE, 0, 0, 0); xosspriteop_put_sprite_scaled(osspriteop_PTR, c->data.jpeg.sprite_area, - (osspriteop_id) (c->data.jpeg.sprite_area + 1), + (osspriteop_id) ((char*)c->data.jpeg.sprite_area + + c->data.jpeg.sprite_area->first), x, (int)(y - height), /* osspriteop_USE_PALETTE is RO 3.5+ only. * behaviour on RO < 3.5 is unknown... -- cgit v1.2.3