[X2Go-Commits] [nx-libs] 78/219: Keyboard.c: nullify freed pointers

git-admin at x2go.org git-admin at x2go.org
Sat Sep 28 12:10:25 CEST 2019


This is an automated email from the git hooks/post-receive script.

x2go pushed a commit to branch 3.6.x
in repository nx-libs.

commit 340de78e26e7837561909ae2a44c2ef85863d87b
Author: Ulrich Sibiller <uli42 at gmx.de>
Date:   Mon Jun 17 17:31:32 2019 +0200

    Keyboard.c: nullify freed pointers
    
    While trying to properly free memory allocated by XKB I accidently
    called nxagentFreeKeyboardDeviceData twice and noticed it would cause
    a segfault here. As the other pointers are also nullified after
    being freed let's just do it here, too.
---
 nx-X11/programs/Xserver/hw/nxagent/Keyboard.c | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/nx-X11/programs/Xserver/hw/nxagent/Keyboard.c b/nx-X11/programs/Xserver/hw/nxagent/Keyboard.c
index 96b33ea7d..46686b754 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/Keyboard.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Keyboard.c
@@ -1327,14 +1327,18 @@ static int nxagentFreeKeyboardDeviceData(DeviceIntPtr dev)
       dev->focus = NULL;
   }
 
-  for (k = dev->kbdfeed; k; k = knext)
+  if (dev->kbdfeed)
   {
-      knext = k->next;
-      #ifdef XKB
-      if (k->xkb_sli)
-          XkbFreeSrvLedInfo(k->xkb_sli);
-      #endif
-      free(k);
+      for (k = dev->kbdfeed; k; k = knext)
+      {
+          knext = k->next;
+          #ifdef XKB
+          if (k->xkb_sli)
+              XkbFreeSrvLedInfo(k->xkb_sli);
+          #endif
+          free(k);
+      }
+      dev->kbdfeed = NULL;
   }
 
   #ifdef DEBUG

--
Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git


More information about the x2go-commits mailing list