summaryrefslogtreecommitdiff
path: root/amiga/plotters.c
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2012-08-05 22:29:35 +0100
committerChris Young <chris@unsatisfactorysoftware.co.uk>2012-08-05 22:29:35 +0100
commitff8d7d974c74e139f06791bef2aa85af22e0f122 (patch)
treeb041bbecd5a9a509d3d907436e3191eb58494ddd /amiga/plotters.c
parentb2514d5270ab2bdb0af3b7d976344a62c93bf213 (diff)
downloadnetsurf-ff8d7d974c74e139f06791bef2aa85af22e0f122.tar.gz
netsurf-ff8d7d974c74e139f06791bef2aa85af22e0f122.tar.bz2
Avoid redrawing palette-mapped images during BeginRefresh/EndRefresh (ie. SimpleRefresh damage redraw) as one of the DataTypes functions are causing an Intuition deadlock.
Diffstat (limited to 'amiga/plotters.c')
-rwxr-xr-xamiga/plotters.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/amiga/plotters.c b/amiga/plotters.c
index 5825f4c41..0078f0c8e 100755
--- a/amiga/plotters.c
+++ b/amiga/plotters.c
@@ -194,6 +194,8 @@ void ami_init_layers(struct gui_globals *gg, ULONG width, ULONG height)
gg->surface = cairo_amigaos_surface_create(gg->rp->BitMap);
gg->cr = cairo_create(gg->surface);
#endif
+
+ gg->locked_layers = false;
}
void ami_free_layers(struct gui_globals *gg)
@@ -644,7 +646,8 @@ static bool ami_bitmap(int x, int y, int width, int height, struct bitmap *bitma
if(palette_mapped == false) {
tbm = ami_getcachenativebm(bitmap, width, height, glob->rp->BitMap);
} else {
- tbm = ami_bitmap_get_palettemapped(bitmap, width, height);
+ if(glob->locked_layers == false)
+ tbm = ami_bitmap_get_palettemapped(bitmap, width, height);
}
if(!tbm) return true;
@@ -733,7 +736,8 @@ bool ami_bitmap_tile(int x, int y, int width, int height,
if(palette_mapped == false) {
tbm = ami_getcachenativebm(bitmap,width,height,glob->rp->BitMap);
} else {
- tbm = ami_bitmap_get_palettemapped(bitmap, width, height);
+ if(glob->locked_layers == false)
+ tbm = ami_bitmap_get_palettemapped(bitmap, width, height);
}
if(!tbm) return true;