frontend: sdl fixes
authornotaz <notasas@gmail.com>
Wed, 13 Mar 2013 23:04:51 +0000 (01:04 +0200)
committernotaz <notasas@gmail.com>
Fri, 15 Mar 2013 00:19:21 +0000 (02:19 +0200)
frontend/libpicofe
frontend/plat_sdl.c

index cceadf4..da0cc55 160000 (submodule)
@@ -1 +1 @@
-Subproject commit cceadf4cd4f1fa7e7f12b3765bba31bfcef6b1e0
+Subproject commit da0cc55643353ab15725194be64a3d8460fe48b1
index dacf584..247437e 100644 (file)
@@ -98,6 +98,7 @@ static void get_layer_pos(int *x, int *y, int *w, int *h)
 
 void plat_init(void)
 {
+  int shadow_size;
   int ret;
 
   plat_sdl_quit_cb = quit_cb;
@@ -110,8 +111,12 @@ void plat_init(void)
   in_menu = 1;
   SDL_WM_SetCaption("PCSX-ReARMed " REV, NULL);
 
-  shadow_fb = malloc(640 * 512 * 2);
-  menubg_img = malloc(640 * 512 * 2);
+  shadow_size = g_menuscreen_w * g_menuscreen_h * 2;
+  if (shadow_size < 640 * 512 * 2)
+    shadow_size = 640 * 512 * 2;
+
+  shadow_fb = malloc(shadow_size);
+  menubg_img = malloc(shadow_size);
   if (shadow_fb == NULL || menubg_img == NULL) {
     fprintf(stderr, "OOM\n");
     exit(1);