From 4b55817a8456c3768e50788b9fef7f606ff4eaa3 Mon Sep 17 00:00:00 2001 From: apriestman <apriestman@basistech.com> Date: Tue, 9 Jun 2020 19:22:20 -0400 Subject: [PATCH] Added exception firewall --- .../src/org/sleuthkit/datamodel/JniDbHelper.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/bindings/java/src/org/sleuthkit/datamodel/JniDbHelper.java b/bindings/java/src/org/sleuthkit/datamodel/JniDbHelper.java index a282d8d41..dc41ea72b 100644 --- a/bindings/java/src/org/sleuthkit/datamodel/JniDbHelper.java +++ b/bindings/java/src/org/sleuthkit/datamodel/JniDbHelper.java @@ -125,7 +125,13 @@ long addImageInfo(int type, long ssize, String timezone, } commitTransaction(); - addDataSourceCallbacks.onDataSourceAdded(objId); + try { + addDataSourceCallbacks.onDataSourceAdded(objId); + } catch (Exception ex) { + // Exception firewall - we do not want to return to the native code without + // passing it the data source ID + logger.log(Level.SEVERE, "Unexpected error from data source added callback", ex); + } return objId; } catch (TskCoreException ex) { logger.log(Level.SEVERE, "Error adding image to the database", ex); @@ -370,7 +376,12 @@ private long addBatchedFilesToDb() { } } commitTransaction(); - addDataSourceCallbacks.onFilesAdded(newObjIds); + try { + addDataSourceCallbacks.onFilesAdded(newObjIds); + } catch (Exception ex) { + // Exception firewall to prevent unexpected return to the native code + logger.log(Level.SEVERE, "Unexpected error from files added callback", ex); + } } catch (TskCoreException ex) { logger.log(Level.SEVERE, "Error adding batched files to database", ex); revertTransaction(); -- GitLab