]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
* grub-core/term/gfxterm.c (dirty_region_add): Move core part to ...
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Tue, 29 Mar 2011 06:33:28 +0000 (08:33 +0200)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Tue, 29 Mar 2011 06:33:28 +0000 (08:33 +0200)
(dirty_region_add_real): ... this.
(dirty_region_add): Don't discard margin refresh when performing
scheduled repaint.

ChangeLog
grub-core/term/gfxterm.c

index a07eff722cc5a7f2341f47b2063932a76a99ddb0..c353b8feae43fa4abca8d9507e0986bd9348bf0a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * grub-core/term/gfxterm.c (dirty_region_add): Move core part to ...
+       (dirty_region_add_real): ... this.
+       (dirty_region_add): Don't discard margin refresh when performing
+       scheduled repaint.
+
 2011-03-29  Vladimir Serbinenko  <phcoder@gmail.com>
 
        * grub-core/lib/relocator.c (allocate_regstart)
index 321479e0a74819a055e4fc801118f74319aff79b..44d1a9be8bacdec048038ffa1c8522b0174a7881 100644 (file)
@@ -532,21 +532,8 @@ dirty_region_is_empty (void)
 }
 
 static void
-dirty_region_add (int x, int y, unsigned int width, unsigned int height)
+dirty_region_add_real (int x, int y, unsigned int width, unsigned int height)
 {
-  if ((width == 0) || (height == 0))
-    return;
-
-  if (repaint_scheduled)
-    {
-      x = virtual_screen.offset_x;
-      y = virtual_screen.offset_y;
-      width = virtual_screen.width;
-      height = virtual_screen.height;
-      repaint_scheduled = 0;
-      repaint_was_scheduled = 1;
-    }
-
   if (dirty_region_is_empty ())
     {
       dirty_region.top_left_x = x;
@@ -567,6 +554,22 @@ dirty_region_add (int x, int y, unsigned int width, unsigned int height)
     }
 }
 
+static void
+dirty_region_add (int x, int y, unsigned int width, unsigned int height)
+{
+  if ((width == 0) || (height == 0))
+    return;
+
+  if (repaint_scheduled)
+    {
+      dirty_region_add_real (virtual_screen.offset_x, virtual_screen.offset_y,
+                            virtual_screen.width, virtual_screen.height);
+      repaint_scheduled = 0;
+      repaint_was_scheduled = 1;
+    }
+  dirty_region_add_real (x, y, width, height);
+}
+
 static void
 dirty_region_add_virtualscreen (void)
 {