diff -Nru pdmenu-1.2.95/CHANGES pdmenu-1.2.95+nmu1/CHANGES
--- pdmenu-1.2.95/CHANGES       2008-07-22 17:56:36.000000000 +0100
+++ pdmenu-1.2.95+nmu1/CHANGES  2008-11-24 02:34:17.000000000 +0000
@@ -1,3 +1,11 @@
+pdmenu (1.2.95+nmu1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Handle disconnection by gpm server gracefully. Closes: #505502.
+    Based on patch by Samuel Thibault <[EMAIL PROTECTED]>.
+
+ -- Ben Hutchings <[EMAIL PROTECTED]>  Mon, 24 Nov 2008 02:19:18 +0000
+
 pdmenu (1.2.95) unstable; urgency=low
 
   * Actually enable Russian translation in Makefile.
diff -Nru pdmenu-1.2.95/debian/changelog pdmenu-1.2.95+nmu1/debian/changelog
--- pdmenu-1.2.95/debian/changelog      2008-07-22 17:56:36.000000000 +0100
+++ pdmenu-1.2.95+nmu1/debian/changelog 2008-11-24 02:34:17.000000000 +0000
@@ -1,3 +1,11 @@
+pdmenu (1.2.95+nmu1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Handle disconnection by gpm server gracefully. Closes: #505502.
+    Based on patch by Samuel Thibault <[EMAIL PROTECTED]>.
+
+ -- Ben Hutchings <[EMAIL PROTECTED]>  Mon, 24 Nov 2008 02:19:18 +0000
+
 pdmenu (1.2.95) unstable; urgency=low
 
   * Actually enable Russian translation in Makefile.
diff -Nru pdmenu-1.2.95/doc/pdmenu-1.2.95.lsm 
pdmenu-1.2.95+nmu1/doc/pdmenu-1.2.95.lsm
--- pdmenu-1.2.95/doc/pdmenu-1.2.95.lsm 2008-07-22 17:56:50.000000000 +0100
+++ pdmenu-1.2.95+nmu1/doc/pdmenu-1.2.95.lsm    1970-01-01 01:00:00.000000000 
+0100
@@ -1,15 +0,0 @@
-Begin3
-Title:         pdmenu
-Version:       1.2.95
-Entered-date:  22JUL08
-Description:   Simple full screen menu program. Can be used
-               as a login shell for inexperienced users.
-               Features color, mouse support, and powerful 
-               (but simple!) menu definition files.
-Keywords:      menu shell
-Author:                [EMAIL PROTECTED]
-Primary-site:  sunsite.unc.edu /pub/Linux/utils/shell
-               576     pdmenu-1.2.95.tar.gz
-Alternate-site:        kitenet.net /pub/code/pdmenu/
-Copying-policy:        GPL
-End
diff -Nru pdmenu-1.2.95/doc/pdmenu-1.2.95+nmu1.lsm 
pdmenu-1.2.95+nmu1/doc/pdmenu-1.2.95+nmu1.lsm
--- pdmenu-1.2.95/doc/pdmenu-1.2.95+nmu1.lsm    1970-01-01 01:00:00.000000000 
+0100
+++ pdmenu-1.2.95+nmu1/doc/pdmenu-1.2.95+nmu1.lsm       2008-11-24 
02:38:35.000000000 +0000
@@ -0,0 +1,15 @@
+Begin3
+Title:         pdmenu
+Version:       1.2.95+nmu1
+Entered-date:  24NOV08
+Description:   Simple full screen menu program. Can be used
+               as a login shell for inexperienced users.
+               Features color, mouse support, and powerful 
+               (but simple!) menu definition files.
+Keywords:      menu shell
+Author:                [EMAIL PROTECTED]
+Primary-site:  sunsite.unc.edu /pub/Linux/utils/shell
+               156     pdmenu-1.2.95+nmu1.tar.gz
+Alternate-site:        kitenet.net /pub/code/pdmenu/
+Copying-policy:        GPL
+End
diff -Nru pdmenu-1.2.95/redhat/pdmenu.spec pdmenu-1.2.95+nmu1/redhat/pdmenu.spec
--- pdmenu-1.2.95/redhat/pdmenu.spec    2008-07-22 17:56:50.000000000 +0100
+++ pdmenu-1.2.95+nmu1/redhat/pdmenu.spec       2008-11-24 02:38:35.000000000 
+0000
@@ -1,7 +1,7 @@
 Summary: A simple text-based menu program
 Name: pdmenu
 Packager: [EMAIL PROTECTED]
-Version: 1.2.95
+Version: 1.2.95+nmu1
 Release: 1
 Url: http://kitenet.net/~joey/code/pdmenu/
 Copyright: GPL
diff -Nru pdmenu-1.2.95/src/mouse.c pdmenu-1.2.95+nmu1/src/mouse.c
--- pdmenu-1.2.95/src/mouse.c   2008-01-01 00:54:33.000000000 +0000
+++ pdmenu-1.2.95+nmu1/src/mouse.c      2008-11-24 02:32:58.000000000 +0000
@@ -44,17 +44,29 @@
 
     retval = select(gpm_fd+1, &rfds, NULL, NULL, &tv);
 
-    if (retval) { /* data available */
-      if ((FD_ISSET(gpm_fd, &rfds)) &&  /* data is for mice */
-         (Gpm_GetEvent(&event))) { /* can read something */
-       if ((event.type & GPM_DOWN) && (event.buttons & GPM_B_LEFT)) 
-         return(MOUSE_BUTTON_LEFT);
-       if ((event.type & GPM_DOWN) && (event.buttons & GPM_B_RIGHT))
-         return(MOUSE_BUTTON_RIGHT);
-       if (event.dy > 0)
-         return(MOUSE_DOWN);
-       if (event.dy < 0)
-         return(MOUSE_UP);
+    if (retval > 0) { /* data available */
+      if (FD_ISSET(gpm_fd, &rfds)) {
+         /* data is for mice */
+       switch (Gpm_GetEvent(&event)) {
+       case 1:
+         /* can read something */
+         if ((event.type & GPM_DOWN) && (event.buttons & GPM_B_LEFT)) 
+           return(MOUSE_BUTTON_LEFT);
+         if ((event.type & GPM_DOWN) && (event.buttons & GPM_B_RIGHT))
+           return(MOUSE_BUTTON_RIGHT);
+         if (event.dy > 0)
+           return(MOUSE_DOWN);
+         if (event.dy < 0)
+           return(MOUSE_UP);
+         break;
+       case -1:
+         /* can read nothing */
+         break;
+       case 0:
+         /* disconnected */
+         gpm_ok = 0;
+         return(MOUSE_NOTHING);
+       } /* switch */
       } else { /* data is for keyboard */
        return(MOUSE_NOTHING);
       } /* else */
--- END ---

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to