diff options
Diffstat (limited to 'src/xf86Wacom.c')
-rw-r--r-- | src/xf86Wacom.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/xf86Wacom.c b/src/xf86Wacom.c index 3057d7a..4f41d64 100644 --- a/src/xf86Wacom.c +++ b/src/xf86Wacom.c @@ -578,6 +578,10 @@ static int wcmDevOpen(DeviceIntPtr pWcm) DBG(10, priv, "\n"); + /* If fd management is done by the server, skip common fd handling */ + if (pInfo->flags & XI86_SERVER_FD) + goto got_fd; + /* open file, if not already open */ if (common->fd_refs == 0) { @@ -610,6 +614,7 @@ static int wcmDevOpen(DeviceIntPtr pWcm) common->fd_refs++; } +got_fd: /* start the tablet data */ if (model->Start && (model->Start(pInfo) != Success)) return !Success; @@ -754,6 +759,10 @@ static void wcmDevClose(InputInfoPtr pInfo) WacomDevicePtr priv = (WacomDevicePtr)pInfo->private; WacomCommonPtr common = priv->common; + /* If fd management is done by the server, skip common fd handling */ + if (pInfo->flags & XI86_SERVER_FD) + return; + DBG(4, priv, "Wacom number of open devices = %d\n", common->fd_refs); if (pInfo->fd >= 0) |