mirror of
https://gitlab.com/mishakmak/pam-fprint-grosshack.git
synced 2026-04-08 20:03:34 +02:00
device: Don't call fp_async_dev_close() with NULL device
In some cases, the priv->dev is already freed and NULL, so ensure that we don't try to close NULL devices and crash.
This commit is contained in:
11
src/device.c
11
src/device.c
@ -556,9 +556,11 @@ _fprint_device_client_vanished (GDBusConnection *connection,
|
||||
done = FALSE;
|
||||
|
||||
/* Close the claimed device as well */
|
||||
fp_async_dev_close (priv->dev, action_stop_cb, &done);
|
||||
while (done == FALSE)
|
||||
g_main_context_iteration (NULL, TRUE);
|
||||
if (priv->dev) {
|
||||
fp_async_dev_close (priv->dev, action_stop_cb, &done);
|
||||
while (done == FALSE)
|
||||
g_main_context_iteration (NULL, TRUE);
|
||||
}
|
||||
|
||||
g_free (priv->sender);
|
||||
priv->sender = NULL;
|
||||
@ -728,7 +730,8 @@ static void fprint_device_release(FprintDevice *rdev,
|
||||
}
|
||||
|
||||
session->context_release_device = context;
|
||||
fp_async_dev_close(priv->dev, dev_close_cb, rdev);
|
||||
if (priv->dev)
|
||||
fp_async_dev_close(priv->dev, dev_close_cb, rdev);
|
||||
}
|
||||
|
||||
static void verify_cb(struct fp_dev *dev, int r, struct fp_img *img,
|
||||
|
||||
Reference in New Issue
Block a user