Initialize the fd to -1 for xorg.conf input devices.
For hotplugged devices, xf86AllocateInput does that for us but the xorg.conf path is different. Since not all drivers reset the fd during PreInit but may still call close(pInfo->fd) in all cases, this can terminate the logging early. Reproducible: add a wacom driver InputDevice section with no Option Device. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Daniel Stone <daniel@fooishbar.org>
This commit is contained in:
parent
f2a6735cfc
commit
3798dd379c
|
@ -1222,6 +1222,7 @@ checkCoreInputDevices(serverLayoutPtr servlayoutp, Bool implicitLayout)
|
||||||
devs = xnfrealloc(servlayoutp->inputs,
|
devs = xnfrealloc(servlayoutp->inputs,
|
||||||
(count + 1) * sizeof(InputInfoPtr));
|
(count + 1) * sizeof(InputInfoPtr));
|
||||||
devs[count - 1] = xnfalloc(sizeof(InputInfoRec));
|
devs[count - 1] = xnfalloc(sizeof(InputInfoRec));
|
||||||
|
Pointer.fd = -1;
|
||||||
*devs[count - 1] = Pointer;
|
*devs[count - 1] = Pointer;
|
||||||
devs[count - 1]->options =
|
devs[count - 1]->options =
|
||||||
xf86addNewOption(devs[count -1]->options,
|
xf86addNewOption(devs[count -1]->options,
|
||||||
|
@ -1267,6 +1268,7 @@ checkCoreInputDevices(serverLayoutPtr servlayoutp, Bool implicitLayout)
|
||||||
devs = xnfrealloc(servlayoutp->inputs,
|
devs = xnfrealloc(servlayoutp->inputs,
|
||||||
(count + 1) * sizeof(InputInfoPtr));
|
(count + 1) * sizeof(InputInfoPtr));
|
||||||
devs[count - 1] = xnfalloc(sizeof(InputInfoRec));
|
devs[count - 1] = xnfalloc(sizeof(InputInfoRec));
|
||||||
|
Pointer.fd = -1;
|
||||||
*devs[count - 1] = Pointer;
|
*devs[count - 1] = Pointer;
|
||||||
devs[count - 1]->options =
|
devs[count - 1]->options =
|
||||||
xf86addNewOption(NULL, xnfstrdup("AlwaysCore"), NULL);
|
xf86addNewOption(NULL, xnfstrdup("AlwaysCore"), NULL);
|
||||||
|
@ -1363,6 +1365,7 @@ checkCoreInputDevices(serverLayoutPtr servlayoutp, Bool implicitLayout)
|
||||||
devs = xnfrealloc(servlayoutp->inputs,
|
devs = xnfrealloc(servlayoutp->inputs,
|
||||||
(count + 1) * sizeof(InputInfoPtr));
|
(count + 1) * sizeof(InputInfoPtr));
|
||||||
devs[count - 1] = xnfalloc(sizeof(InputInfoRec));
|
devs[count - 1] = xnfalloc(sizeof(InputInfoRec));
|
||||||
|
Keyboard.fd = -1;
|
||||||
*devs[count - 1] = Keyboard;
|
*devs[count - 1] = Keyboard;
|
||||||
devs[count - 1]->options =
|
devs[count - 1]->options =
|
||||||
xf86addNewOption(devs[count - 1]->options,
|
xf86addNewOption(devs[count - 1]->options,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user