rnd-20071001-1-src
[rocksndiamonds.git] / src / libgame / sdl.c
index 4d9c5462c2a66c679def5efb90072b811d865e1f..ab3ac82d20e80fa80ebb2f1ea29ad41f790a2da0 100644 (file)
@@ -402,8 +402,6 @@ void SDLFadeRectangle(Bitmap *bitmap_cross, int x, int y, int width, int height,
   int src_x = x, src_y = y;
   int dst_x = x, dst_y = y;
   unsigned int time_last, time_current;
-  float alpha;
-  int alpha_final;
 
   src_rect.x = src_x;
   src_rect.y = src_y;
@@ -498,6 +496,7 @@ void SDLFadeRectangle(Bitmap *bitmap_cross, int x, int y, int width, int height,
     int ypos[melt_columns];
     int max_steps = height / 8 + 32;
     int steps_done = 0;
+    float steps = 0;
     int i;
 
     SDL_BlitSurface(surface_source, &src_rect, surface_screen, &dst_rect);
@@ -520,7 +519,6 @@ void SDLFadeRectangle(Bitmap *bitmap_cross, int x, int y, int width, int height,
 
     while (!done)
     {
-      float steps;
       int steps_final;
 
       time_last = time_current;
@@ -610,6 +608,9 @@ void SDLFadeRectangle(Bitmap *bitmap_cross, int x, int y, int width, int height,
   }
   else
   {
+    float alpha;
+    int alpha_final;
+
     for (alpha = 0.0; alpha < 255.0;)
     {
       time_last = time_current;
@@ -1636,6 +1637,8 @@ Bitmap *SDLLoadImage(char *filename)
     return NULL;
   }
 
+  UPDATE_BUSY_STATE();
+
   /* create native non-transparent surface for current image */
   if ((new_bitmap->surface = SDL_DisplayFormat(sdl_image_tmp)) == NULL)
   {
@@ -1644,6 +1647,8 @@ Bitmap *SDLLoadImage(char *filename)
     return NULL;
   }
 
+  UPDATE_BUSY_STATE();
+
   /* create native transparent surface for current image */
   SDL_SetColorKey(sdl_image_tmp, SDL_SRCCOLORKEY,
                  SDL_MapRGB(sdl_image_tmp->format, 0x00, 0x00, 0x00));
@@ -1654,6 +1659,8 @@ Bitmap *SDLLoadImage(char *filename)
     return NULL;
   }
 
+  UPDATE_BUSY_STATE();
+
   /* free temporary surface */
   SDL_FreeSurface(sdl_image_tmp);