]> xenbits.xensource.com Git - xenclient/ioemu.git/commitdiff
Handle multiple call to intel_focus with the same arguement.
authorJean Guyader <jean.guyader@eu.citrix.com>
Wed, 3 Dec 2008 17:58:38 +0000 (17:58 +0000)
committerJean Guyader <jean.guyader@eu.citrix.com>
Wed, 3 Dec 2008 17:58:38 +0000 (17:58 +0000)
intel.c

diff --git a/intel.c b/intel.c
index 8d8deedee068554304d884f06106fdb33f1c7f6e..b77aa4236a3a0a33a1ce34da39b9f12b6460aabe 100644 (file)
--- a/intel.c
+++ b/intel.c
@@ -287,7 +287,9 @@ static void unset_data_mappings(void)
 
 void intel_focus(int focus)
 {
-    intel_have_focus = focus;
+    if (intel_have_focus == focus)
+        return;
+
     if (focus) {
         if (!is_linear()) {
             if (intel_get_reg(REG_DR_DSPASTRIDE) == 0x1000) {
@@ -305,6 +307,7 @@ void intel_focus(int focus)
     } else if (old_data) {
         unset_data_mappings();
     }
+    intel_have_focus = focus;
 }
 
 static void intel_parse_arg(const char *arg)