open-src/driver/xf86-input-mouse/18110537.patch
author Niveditha Rau <Niveditha.Rau@Oracle.COM>
Wed, 22 Jan 2014 08:45:53 -0800
changeset 1383 60d97fb3b5bf
permissions -rw-r--r--
17429216 global vuidMouseList should not keep info for removed mouse device
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1383
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
     1
--- a/src/sun_mouse.c	Thu Jan  9 15:08:10 2014
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
     2
+++ b/src/sun_mouse.c	Fri Jan 10 10:22:04 2014
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
     3
@@ -623,7 +623,7 @@
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
     4
 {
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
     5
     InputInfoPtr pInfo;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
     6
     MouseDevPtr pMse;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
     7
-    VuidMsePtr pVuidMse;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
     8
+    VuidMsePtr pVuidMse, m;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
     9
     int ret = Success;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    10
     int i;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    11
 
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    12
@@ -702,8 +702,20 @@
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    13
         }
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    14
         break;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    15
 
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    16
-    case DEVICE_OFF:
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    17
     case DEVICE_CLOSE:
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    18
+	m = vuidMouseList;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    19
+	
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    20
+	if (m == pVuidMse)
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    21
+	    vuidMouseList = m->next;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    22
+	else {
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    23
+		while ((m != NULL) && (m->next != pVuidMse)) {
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    24
+		    m = m->next;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    25
+		}
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    26
+		
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    27
+		if (m != NULL)
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    28
+		    m->next = pVuidMse->next;
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    29
+	}
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    30
+    case DEVICE_OFF:
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    31
         if (pInfo->fd != -1) {
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    32
             if (pVuidMse->strmod) {
60d97fb3b5bf 17429216 global vuidMouseList should not keep info for removed mouse device
Niveditha Rau <Niveditha.Rau@Oracle.COM>
parents:
diff changeset
    33
                 SYSCALL(i = ioctl(pInfo->fd, I_POP, pVuidMse->strmod));