diff options
author | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2016-01-25 18:41:50 +0000 |
---|---|---|
committer | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2016-01-25 18:41:50 +0000 |
commit | 5c8dccd5f6353524173542762154473f4006383f (patch) | |
tree | 270101ea04de7e8832dfb22a88038b133d333c76 /amiga | |
parent | beb6cebf1e25cd95f7b2e5acbcb35defcf1496b5 (diff) | |
download | netsurf-5c8dccd5f6353524173542762154473f4006383f.tar.gz netsurf-5c8dccd5f6353524173542762154473f4006383f.tar.bz2 |
When forcing 32-bit render mode, don't create the BitMaps as friends of the screen BitMap.
This fixes a system freeze on OS4
Diffstat (limited to 'amiga')
-rwxr-xr-x | amiga/bitmap.h | 1 | ||||
-rw-r--r-- | amiga/plotters.c | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/amiga/bitmap.h b/amiga/bitmap.h index 20e631585..aba359783 100755 --- a/amiga/bitmap.h +++ b/amiga/bitmap.h @@ -35,6 +35,7 @@ struct bitmap { int height; UBYTE *pixdata; bool opaque; + int native; struct BitMap *nativebm; int nativebmwidth; int nativebmheight; diff --git a/amiga/plotters.c b/amiga/plotters.c index bb69dce24..c6c546b03 100644 --- a/amiga/plotters.c +++ b/amiga/plotters.c @@ -142,7 +142,7 @@ void ami_init_layers(struct gui_globals *gg, ULONG width, ULONG height, bool for } else { /* Force friend BitMaps on for obvious RTG screens under OS3. * If we get a bit smarter about this we can lose the user option. */ - if(depth >= 16) friend = scrn->RastPort.BitMap; + if((depth >= 16) && (force32bit == false)) friend = scrn->RastPort.BitMap; } #endif @@ -154,7 +154,7 @@ void ami_init_layers(struct gui_globals *gg, ULONG width, ULONG height, bool for * We get freezes and other problems on OS4 if we befriend at any * other depths, hence this check. */ - if(depth >= 24) friend = scrn->RastPort.BitMap; + if((depth >= 24) && (force32bit == false)) friend = scrn->RastPort.BitMap; #endif gg->bm = ami_rtg_allocbitmap(width, height, 32, 0, friend, RGBFB_A8R8G8B8); } |