Commit 340de78e authored by Ulrich Sibiller's avatar Ulrich Sibiller

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.
parent 3b06ad51
...@@ -1327,14 +1327,18 @@ static int nxagentFreeKeyboardDeviceData(DeviceIntPtr dev) ...@@ -1327,14 +1327,18 @@ static int nxagentFreeKeyboardDeviceData(DeviceIntPtr dev)
dev->focus = NULL; dev->focus = NULL;
} }
for (k = dev->kbdfeed; k; k = knext) if (dev->kbdfeed)
{ {
knext = k->next; for (k = dev->kbdfeed; k; k = knext)
#ifdef XKB {
if (k->xkb_sli) knext = k->next;
XkbFreeSrvLedInfo(k->xkb_sli); #ifdef XKB
#endif if (k->xkb_sli)
free(k); XkbFreeSrvLedInfo(k->xkb_sli);
#endif
free(k);
}
dev->kbdfeed = NULL;
} }
#ifdef DEBUG #ifdef DEBUG
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment