Coverity: NEGATIVE_RETURNS: CID 588
authorNelson Ferreira <nelson.ferreira@ieee.org>
Thu, 12 Jan 2012 15:23:40 +0000 (10:23 -0500)
committerNelson Ferreira <nelson.ferreira@ieee.org>
Thu, 12 Jan 2012 15:23:40 +0000 (10:23 -0500)
* src/ui/TTY/gpmevent.c (restore_gpm_state): Make sure that fd is
>= 0 before accesing the state array.

* src/ui/TTY/gpmevent.c (store_gpm_state): Ditto.

Signed-off-by: Nelson Ferreira <nelson.ferreira@ieee.org>
src/ui/TTY/gpmevent.c

index 41890bd..2916ce2 100644 (file)
@@ -67,6 +67,11 @@ static struct __gpm_state gpm_state_information[MAXDESC];
 
 static void store_gpm_state(int fd)
 {
+       if (fd < 0) {
+               warn_when_safe(Qnil, Qcritical, "store_gpm_state negative fd - %d",
+                              fd);
+               return;
+       }
        gpm_state_information[fd].gpm_tried = gpm_tried;
        gpm_state_information[fd].gpm_flag = gpm_flag;
        gpm_state_information[fd].gpm_stack = gpm_stack;
@@ -74,6 +79,11 @@ static void store_gpm_state(int fd)
 
 static void restore_gpm_state(int fd)
 {
+       if (fd < 0) {
+               warn_when_safe(Qnil, Qcritical, "restore_gpm_state negative fd - %d",
+                              fd);
+               return;
+       }
        gpm_tried = gpm_state_information[fd].gpm_tried;
        gpm_flag = gpm_state_information[fd].gpm_flag;
        gpm_stack = gpm_state_information[fd].gpm_stack;