Make DeviceManager.close() cancellable

This commit is contained in:
Ole André Vadla Ravnås
2019-09-04 02:21:12 +02:00
parent 870199d9e7
commit 7def1ad210
2 changed files with 8 additions and 3 deletions
+3 -2
View File
@@ -94,8 +94,9 @@ def enumerate_devices(**kwargs):
return get_device_manager().enumerate_devices(**kwargs)
def shutdown(**kwargs):
get_device_manager()._impl.close(**kwargs)
@core.cancellable
def shutdown():
get_device_manager()._impl.close()
global _device_manager
+5 -1
View File
@@ -1826,9 +1826,13 @@ PyDeviceManager_dealloc (PyDeviceManager * self)
static PyObject *
PyDeviceManager_close (PyDeviceManager * self)
{
GError * error = NULL;
Py_BEGIN_ALLOW_THREADS
frida_device_manager_close_sync (PY_GOBJECT_HANDLE (self), NULL, NULL);
frida_device_manager_close_sync (PY_GOBJECT_HANDLE (self), g_cancellable_get_current (), &error);
Py_END_ALLOW_THREADS
if (error != NULL)
return PyFrida_raise (error);
Py_RETURN_NONE;
}