summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2021-12-27 15:18:11 -0500
committerGlenn Smith <glenn@vector35.com>2022-01-17 20:42:14 -0500
commitdc2a99e1159c3951b91935490ec8d2da5fc8e1e7 (patch)
tree4607977204491728a76e173640a306e14808b1b3 /python
parentfec5a962870a4a2a446b25c6256a5ba54c1f8f83 (diff)
Make various database progress functions cancellable
Diffstat (limited to 'python')
-rw-r--r--python/binaryview.py2
-rw-r--r--python/filemetadata.py10
2 files changed, 6 insertions, 6 deletions
diff --git a/python/binaryview.py b/python/binaryview.py
index 03b1f9e7..b02f5d1a 100644
--- a/python/binaryview.py
+++ b/python/binaryview.py
@@ -6757,7 +6757,7 @@ class BinaryView:
if progress_func is None:
result = core.BNRebase(self.handle, address)
else:
- result = core.BNRebaseWithProgress(self.handle, address, None, ctypes.CFUNCTYPE(None, ctypes.c_void_p, ctypes.c_ulonglong, ctypes.c_ulonglong)(
+ result = core.BNRebaseWithProgress(self.handle, address, None, ctypes.CFUNCTYPE(ctypes.c_bool, ctypes.c_void_p, ctypes.c_ulonglong, ctypes.c_ulonglong)(
lambda ctxt, cur, total: progress_func(cur, total)))
if result:
return self.get_view_of_type(self.view_type)
diff --git a/python/filemetadata.py b/python/filemetadata.py
index 5a36fde0..aea68bb6 100644
--- a/python/filemetadata.py
+++ b/python/filemetadata.py
@@ -434,7 +434,7 @@ class FileMetadata:
else:
_progress_func = progress_func
return core.BNCreateDatabaseWithProgress(self.raw.handle, str(filename), None,
- ctypes.CFUNCTYPE(None, ctypes.c_void_p, ctypes.c_ulonglong, ctypes.c_ulonglong)(
+ ctypes.CFUNCTYPE(ctypes.c_bool, ctypes.c_void_p, ctypes.c_ulonglong, ctypes.c_ulonglong)(
lambda ctxt, cur, total: _progress_func(cur, total)), settings)
def open_existing_database(self, filename:str, progress_func:Callable[[int, int], bool]=None):
@@ -442,7 +442,7 @@ class FileMetadata:
view = core.BNOpenExistingDatabase(self.handle, str(filename))
else:
view = core.BNOpenExistingDatabaseWithProgress(self.handle, str(filename), None,
- ctypes.CFUNCTYPE(None, ctypes.c_void_p, ctypes.c_ulonglong, ctypes.c_ulonglong)(
+ ctypes.CFUNCTYPE(ctypes.c_bool, ctypes.c_void_p, ctypes.c_ulonglong, ctypes.c_ulonglong)(
lambda ctxt, cur, total: progress_func(cur, total)))
if view is None:
return None
@@ -465,7 +465,7 @@ class FileMetadata:
else:
_progress_func = progress_func
return core.BNSaveAutoSnapshotWithProgress(self.raw.handle, None,
- ctypes.CFUNCTYPE(None, ctypes.c_void_p, ctypes.c_ulonglong, ctypes.c_ulonglong)(
+ ctypes.CFUNCTYPE(ctypes.c_bool, ctypes.c_void_p, ctypes.c_ulonglong, ctypes.c_ulonglong)(
lambda ctxt, cur, total: _progress_func(cur, total)), _settings)
def merge_user_analysis(self, path:str, progress_func:ProgressFuncType, excluded_hashes:Optional[List[str]]=None):
@@ -475,7 +475,7 @@ class FileMetadata:
for i in range(len(excluded_hashes)):
excluded[i] = core.cstr(excluded_hashes[i])
return core.BNMergeUserAnalysis(self.handle, str(path), None,
- ctypes.CFUNCTYPE(None, ctypes.c_void_p, ctypes.c_ulonglong, ctypes.c_ulonglong)(
+ ctypes.CFUNCTYPE(None, ctypes.c_bool, ctypes.c_ulonglong, ctypes.c_ulonglong)(
lambda ctxt, cur, total: progress_func(cur, total)), excluded, len(excluded_hashes))
def get_view_of_type(self, name:str) -> Optional['binaryview.BinaryView']:
@@ -509,4 +509,4 @@ class FileMetadata:
for i in range(length.value):
views.append(result[i].decode("utf-8"))
core.BNFreeStringList(result, length)
- return views \ No newline at end of file
+ return views