diff --git a/Case/src/org/sleuthkit/autopsy/casemodule/AddImageVisualPanel2.form b/Case/src/org/sleuthkit/autopsy/casemodule/AddImageVisualPanel2.form index 6accbac11e..22a106fde4 100644 --- a/Case/src/org/sleuthkit/autopsy/casemodule/AddImageVisualPanel2.form +++ b/Case/src/org/sleuthkit/autopsy/casemodule/AddImageVisualPanel2.form @@ -46,7 +46,7 @@ - + diff --git a/Case/src/org/sleuthkit/autopsy/casemodule/AddImageVisualPanel2.java b/Case/src/org/sleuthkit/autopsy/casemodule/AddImageVisualPanel2.java index 6342793a2c..df309133c4 100644 --- a/Case/src/org/sleuthkit/autopsy/casemodule/AddImageVisualPanel2.java +++ b/Case/src/org/sleuthkit/autopsy/casemodule/AddImageVisualPanel2.java @@ -85,7 +85,7 @@ final class AddImageVisualPanel2 extends JPanel { org.openide.awt.Mnemonics.setLocalizedText(jLabel5, org.openide.util.NbBundle.getMessage(AddImageVisualPanel2.class, "AddImageVisualPanel2.jLabel5.text")); // NOI18N - crDbLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N + crDbLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); org.openide.awt.Mnemonics.setLocalizedText(crDbLabel, org.openide.util.NbBundle.getMessage(AddImageVisualPanel2.class, "AddImageVisualPanel2.crDbLabel.text")); // NOI18N org.openide.awt.Mnemonics.setLocalizedText(progressLabel, org.openide.util.NbBundle.getMessage(AddImageVisualPanel2.class, "AddImageVisualPanel2.progressLabel.text")); // NOI18N @@ -104,7 +104,7 @@ final class AddImageVisualPanel2 extends JPanel { .addComponent(crDbLabel) .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 552, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel5)) - .addGap(0, 0, Short.MAX_VALUE)) + .addGap(0, 16, Short.MAX_VALUE)) .addComponent(crDbProgressBar, javax.swing.GroupLayout.DEFAULT_SIZE, 568, Short.MAX_VALUE) .addComponent(progressLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 568, Short.MAX_VALUE)) .addContainerGap()) @@ -121,7 +121,7 @@ final class AddImageVisualPanel2 extends JPanel { .addGap(18, 18, 18) .addComponent(crDbProgressBar, javax.swing.GroupLayout.PREFERRED_SIZE, 24, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) - .addComponent(progressLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 12, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(progressLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 12, Short.MAX_VALUE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); }// //GEN-END:initComponents diff --git a/Case/src/org/sleuthkit/autopsy/casemodule/AddImageWizardPanel2.java b/Case/src/org/sleuthkit/autopsy/casemodule/AddImageWizardPanel2.java index 9327ae8c57..68f608e118 100644 --- a/Case/src/org/sleuthkit/autopsy/casemodule/AddImageWizardPanel2.java +++ b/Case/src/org/sleuthkit/autopsy/casemodule/AddImageWizardPanel2.java @@ -227,6 +227,8 @@ class AddImageWizardPanel2 implements WizardDescriptor.Panel { private Case currentCase; // true if the process was requested to stop private boolean interrupted = false; + private boolean hasCritError = false; + private String errorString = null; protected AddImgTask() { this.progressBar = getComponent().getCrDbProgressBar(); @@ -242,6 +244,7 @@ class AddImageWizardPanel2 implements WizardDescriptor.Panel { @Override protected Integer doInBackground() { this.setProgress(0); + // Add a cleanup task to interupt the backgroud process if the // wizard exits while the background process is running. @@ -249,7 +252,8 @@ class AddImageWizardPanel2 implements WizardDescriptor.Panel { @Override void cleanup() throws Exception { - addImageTask.interrupt(); + logger.log(Level.INFO, "Add image process interrupted."); + addImageTask.interrupt(); //it might take time to truly interrupt } }; @@ -281,11 +285,11 @@ class AddImageWizardPanel2 implements WizardDescriptor.Panel { } catch (TskCoreException ex) { logger.log(Level.WARNING, "Errors occurred while running add image. ", ex); //critical core/system error and process needs to be interrupted - interrupted = true; - //TODO show record and add error count to add image summary stats dialog + hasCritError = true; + errorString = ex.getMessage(); } catch (TskDataException ex) { logger.log(Level.WARNING, "Errors occurred while running add image. ", ex); - //TODO show record and add error count to add image summary stats dialog + errorString = ex.getMessage(); } finally { // process is over, doesn't need to be dealt with if cancel happens cancelledWhileRunning.disable(); @@ -303,22 +307,26 @@ class AddImageWizardPanel2 implements WizardDescriptor.Panel { progressBar.setIndeterminate(false); // attempt actions that might fail and force the process to stop + try { - // get() will block until doInBackground done and throw any exceptions that were thrown in the background task + //get() will block until doInBackground done and throw any exceptions + //that were thrown in the background task + //if process was stopped, stop should have been complete (otherwise, unsafe to revert() ) get(); } catch (InterruptedException e) { } catch (ExecutionException e) { } finally { - if (interrupted) { - try { - try { - process.revert(); - } catch (TskCoreException ex) { - Exceptions.printStackTrace(ex); + if (interrupted || hasCritError) { + logger.log(Level.INFO, "Handling errors or interruption that occured in add image process"); + revert(); + if (hasCritError) { + StringBuilder errMsgB = new StringBuilder(); + errMsgB.append("*Failed to add image"); + if (errorString != null) { + errMsgB.append(":
").append(errorString); } - } finally { - //unlock db write within EWT thread - SleuthkitCase.dbWriteUnlock(); + errMsgB.append(""); + getComponent().changeProgressBarTextAndColor(errMsgB.toString(), 0, Color.black); } return; } @@ -331,15 +339,10 @@ class AddImageWizardPanel2 implements WizardDescriptor.Panel { // the add-image process needs to be reverted if the wizard doesn't finish cleanupImage = action.new CleanupTask() { //note, CleanupTask runs inside EWT thread - @Override void cleanup() throws Exception { - try { - process.revert(); - } finally { - //unlock db write within EWT thread - SleuthkitCase.dbWriteUnlock(); - } + logger.log(Level.INFO, "Running cleanup task after add image process"); + revert(); } }; cleanupImage.enable(); @@ -351,8 +354,9 @@ class AddImageWizardPanel2 implements WizardDescriptor.Panel { AddImageVisualPanel2 panel = getComponent(); if (panel != null) { Window w = SwingUtilities.getWindowAncestor(panel); - if (w!= null) + if (w != null) { w.toFront(); + } } setDbCreated(true); @@ -360,7 +364,7 @@ class AddImageWizardPanel2 implements WizardDescriptor.Panel { } catch (Exception ex) { //handle unchecked exceptions post image add - logger.log(Level.WARNING, "Unexpected errors occurred while running add image. ", ex); + logger.log(Level.WARNING, "Unexpected errors occurred while running post add image cleanup. ", ex); getComponent().changeProgressBarTextAndColor("*Failed to add image.", 0, Color.black); // set error message @@ -374,10 +378,26 @@ class AddImageWizardPanel2 implements WizardDescriptor.Panel { void interrupt() throws Exception { interrupted = true; try { - process.stop(); + logger.log(Level.INFO, "interrupt() add image process"); + process.stop(); //it might take time to truly stop processing and writing to db } catch (TskException ex) { throw new Exception("Error stopping add-image process.", ex); } } + + //runs in EWT + void revert() { + try { + logger.log(Level.INFO, "Revert after add image process"); + try { + process.revert(); + } catch (TskCoreException ex) { + logger.log(Level.WARNING, "Error reverting add image process", ex); + } + } finally { + //unlock db write within EWT thread + SleuthkitCase.dbWriteUnlock(); + } + } } } diff --git a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Chrome.java b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Chrome.java index a2a2243b62..81ffec0371 100755 --- a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Chrome.java +++ b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Chrome.java @@ -84,6 +84,7 @@ public class Chrome extends Extract implements IngestServiceImage { ContentUtils.writeToFile(FFSqlitedb.get(j), new File(currentCase.getTempDirectory() + File.separator + FFSqlitedb.get(j).getName().toString() + j + ".db")); } catch (Exception ex) { logger.log(Level.WARNING, "Error while trying to write out a sqlite db.{0}", ex); + this.addErrorMessage(this.getName() + ": Error while trying to analyze file:" + FFSqlitedb.get(j).getName()); } File dbFile = new File(temps); if (controller.isCancelled()) { @@ -95,7 +96,7 @@ public class Chrome extends Extract implements IngestServiceImage { try { Collection bbattributes = new ArrayList(); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_URL.getTypeID(), "Recent Activity", "", ((result.get("url").toString() != null) ? result.get("url").toString() : ""))); - bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_LAST_ACCESSED.getTypeID(), "Recent Activity", "Last Visited", ((Long.valueOf(result.get("last_visit_time").toString())) / 10000))); + bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_LAST_ACCESSED.getTypeID(), "Recent Activity", "Last Visited", ((Long.valueOf(result.get("last_visit_time").toString())) / 10000000))); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_REFERRER.getTypeID(), "Recent Activity", "", ((result.get("from_visit").toString() != null) ? result.get("from_visit").toString() : ""))); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_NAME.getTypeID(), "Recent Activity", "", ((result.get("title").toString() != null) ? result.get("title").toString() : ""))); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_PROG_NAME.getTypeID(), "Recent Activity", "", "Chrome")); @@ -126,6 +127,7 @@ public class Chrome extends Extract implements IngestServiceImage { ContentUtils.writeToFile(FFSqlitedb.get(j), new File(currentCase.getTempDirectory() + File.separator + FFSqlitedb.get(j).getName().toString() + j + ".db")); } catch (Exception ex) { logger.log(Level.WARNING, "Error while trying to write out a sqlite db.{0}", ex); + this.addErrorMessage(this.getName() + ": Error while trying to analyze file:" + FFSqlitedb.get(j).getName()); } File dbFile = new File(temps); if (controller.isCancelled()) { @@ -149,7 +151,7 @@ public class Chrome extends Extract implements IngestServiceImage { String domain = Util.extractDomain(url); BlackboardArtifact bbart = FFSqlitedb.get(j).newArtifact(ARTIFACT_TYPE.TSK_WEB_BOOKMARK); Collection bbattributes = new ArrayList(); - bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_LAST_ACCESSED.getTypeID(), "Recent Activity", "Last Visited", (date / 10000))); + bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_LAST_ACCESSED.getTypeID(), "Recent Activity", "Last Visited", (date / 10000000))); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_URL.getTypeID(), "Recent Activity", "", url)); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_NAME.getTypeID(), "Recent Activity", "", name)); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_PROG_NAME.getTypeID(), "Recent Activity", "", "Chrome")); @@ -184,6 +186,7 @@ public class Chrome extends Extract implements IngestServiceImage { ContentUtils.writeToFile(FFSqlitedb.get(j), new File(currentCase.getTempDirectory() + File.separator + FFSqlitedb.get(j).getName().toString() + j + ".db")); } catch (Exception ex) { logger.log(Level.WARNING, "Error while trying to write out a sqlite db.{0}", ex); + this.addErrorMessage(this.getName() + ": Error while trying to analyze file:" + FFSqlitedb.get(j).getName()); } File dbFile = new File(temps); if (controller.isCancelled()) { @@ -196,7 +199,7 @@ public class Chrome extends Extract implements IngestServiceImage { try { Collection bbattributes = new ArrayList(); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_NAME.getTypeID(), "Recent Activity", "Title", ((result.get("name").toString() != null) ? result.get("name").toString() : ""))); - bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_DATETIME.getTypeID(), "Recent Activity", "Last Visited", ((Long.valueOf(result.get("last_access_utc").toString())) / 10000))); + bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_DATETIME.getTypeID(), "Recent Activity", "Last Visited", ((Long.valueOf(result.get("last_access_utc").toString())) / 10000000))); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_VALUE.getTypeID(), "Recent Activity", "", ((result.get("value").toString() != null) ? result.get("value").toString() : ""))); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_PROG_NAME.getTypeID(), "Recent Activity", "", "Chrome")); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_URL.getTypeID(), "Recent Activity", "", ((result.get("host_key").toString() != null) ? result.get("host_key").toString() : ""))); @@ -230,6 +233,7 @@ public class Chrome extends Extract implements IngestServiceImage { ContentUtils.writeToFile(FFSqlitedb.get(j), new File(currentCase.getTempDirectory() + File.separator + FFSqlitedb.get(j).getName().toString() + j + ".db")); } catch (Exception ex) { logger.log(Level.WARNING, "Error while trying to write out a sqlite db.{0}", ex); + this.addErrorMessage(this.getName() + ": Error while trying to analyze file:" + FFSqlitedb.get(j).getName()); } File dbFile = new File(temps); if (controller.isCancelled()) { @@ -245,8 +249,8 @@ public class Chrome extends Extract implements IngestServiceImage { bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_PATH_ID.getTypeID(), "Recent Activity", "", Util.findID((result.get("full_path").toString())))); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_URL.getTypeID(), "Recent Activity", "", ((result.get("url").toString() != null) ? result.get("url").toString() : ""))); Long time = (Long.valueOf(result.get("start_time").toString())); - String Tempdate = time.toString() + "000"; - time = Long.valueOf(Tempdate); + String Tempdate = time.toString(); + time = Long.valueOf(Tempdate)/10000000; bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_LAST_ACCESSED.getTypeID(), "Recent Activity", "Last Visited", time)); String domain = Util.extractDomain((result.get("url").toString() != null) ? result.get("url").toString() : ""); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_DOMAIN.getTypeID(), "Recent Activity", "", domain)); @@ -284,12 +288,12 @@ public class Chrome extends Extract implements IngestServiceImage { dbFile.delete(); break; } - List> tempList = this.dbConnect(temps, chquery); + List> tempList = this.dbConnect(temps, chloginquery); for (HashMap result : tempList) { try { Collection bbattributes = new ArrayList(); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_URL.getTypeID(), "Recent Activity", "", ((result.get("origin_url").toString() != null) ? result.get("origin_url").toString() : ""))); - bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_LAST_ACCESSED.getTypeID(), "Recent Activity", "Last Visited", ((Long.valueOf(result.get("last_visit_time").toString())) / 10000))); + bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_LAST_ACCESSED.getTypeID(), "Recent Activity", "Last Visited", ((Long.valueOf(result.get("last_visit_time").toString())) / 1000000))); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_REFERRER.getTypeID(), "Recent Activity", "", ((result.get("from_visit").toString() != null) ? result.get("from_visit").toString() : ""))); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_NAME.getTypeID(), "Recent Activity", "", ((result.get("title").toString() != null) ? result.get("title").toString() : ""))); bbattributes.add(new BlackboardAttribute(ATTRIBUTE_TYPE.TSK_PROG_NAME.getTypeID(), "Recent Activity", "", "Chrome")); diff --git a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/ExtractIE.java b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/ExtractIE.java index c6f9aeab7b..95bd4c010a 100755 --- a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/ExtractIE.java +++ b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/ExtractIE.java @@ -128,7 +128,7 @@ public class ExtractIE extends Extract implements IngestServiceImage { } String name = Favorite.getName(); Long datetime = Favorite.getCrtime(); - String Tempdate = datetime.toString() + "000"; + String Tempdate = datetime.toString(); datetime = Long.valueOf(Tempdate); String domain = Util.getBaseDomain(url); try { @@ -172,7 +172,7 @@ public class ExtractIE extends Extract implements IngestServiceImage { String value = values.length > 1 ? values[1] : ""; String name = values.length > 0 ? values[0] : ""; Long datetime = Cookie.getCrtime(); - String Tempdate = datetime.toString() + "000"; + String Tempdate = datetime.toString(); datetime = Long.valueOf(Tempdate); String domain = url; domain = domain.replaceFirst("^\\.+(?!$)", ""); @@ -226,7 +226,7 @@ public class ExtractIE extends Extract implements IngestServiceImage { String path = Util.getPath(recentString); String name = Util.getFileName(path); Long datetime = Recent.getCrtime(); - String Tempdate = datetime.toString() + "000"; + String Tempdate = datetime.toString(); datetime = Long.valueOf(Tempdate); try { Collection bbattributes = new ArrayList(); @@ -452,6 +452,7 @@ public class ExtractIE extends Extract implements IngestServiceImage { try { Long epochtime = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'").parse(actime).getTime(); ftime = epochtime.longValue(); + ftime = ftime/1000; } catch (ParseException e) { logger.log(Level.SEVERE, "ExtractIE::parsePascosResults() -> ", e.getMessage()); } diff --git a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/ExtractRegistry.java b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/ExtractRegistry.java index 0128b4e38f..336c5d217e 100644 --- a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/ExtractRegistry.java +++ b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/ExtractRegistry.java @@ -220,7 +220,7 @@ public class ExtractRegistry implements IngestServiceImage { Long epochtime = new SimpleDateFormat("EEE MMM d HH:mm:ss yyyy").parse(etime).getTime(); time = epochtime.longValue(); String Tempdate = time.toString(); - time = Long.valueOf(Tempdate); + time = Long.valueOf(Tempdate)/1000; } catch (ParseException e) { logger.log(Level.SEVERE, "RegRipper::Conversion on DateTime -> ", e.getMessage()); } @@ -249,8 +249,9 @@ public class ExtractRegistry implements IngestServiceImage { try { utime = Long.parseLong(name); - String Tempdate = utime.toString() + "000"; + String Tempdate = utime.toString(); utime = Long.valueOf(Tempdate); + utime = utime; } catch (Exception e) { logger.log(Level.SEVERE, "RegRipper::Conversion on DateTime -> ", e.getMessage()); } @@ -266,7 +267,7 @@ public class ExtractRegistry implements IngestServiceImage { try { Long epochtime = new SimpleDateFormat("EEE MMM d HH:mm:ss yyyy").parse(name).getTime(); ftime = epochtime.longValue(); - + ftime = ftime/1000; } catch (ParseException e) { logger.log(Level.SEVERE, "RegRipper::Conversion on DateTime -> ", e.getMessage()); } @@ -290,7 +291,7 @@ public class ExtractRegistry implements IngestServiceImage { Long epochtime = new SimpleDateFormat("EEE MMM d HH:mm:ss yyyy").parse(value).getTime(); installtime = epochtime.longValue(); String Tempdate = installtime.toString(); - installtime = Long.valueOf(Tempdate); + installtime = Long.valueOf(Tempdate)/1000; } catch (ParseException e) { logger.log(Level.SEVERE, "RegRipper::Conversion on DateTime -> ", e.getMessage()); } diff --git a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Firefox.java b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Firefox.java index 21281b7a06..6a5a7f2417 100644 --- a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Firefox.java +++ b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Firefox.java @@ -47,11 +47,11 @@ import org.sleuthkit.datamodel.Image; */ public class Firefox extends Extract implements IngestServiceImage { - private static final String ffquery = "SELECT moz_historyvisits.id,url,title,visit_count,(visit_date/1000) as visit_date,from_visit,(SELECT url FROM moz_places WHERE id=moz_historyvisits.from_visit) as ref FROM moz_places, moz_historyvisits WHERE moz_places.id = moz_historyvisits.place_id AND hidden = 0"; - private static final String ffcookiequery = "SELECT name,value,host,expiry,(lastAccessed/1000) as lastAccessed,(creationTime/1000) as creationTime FROM moz_cookies"; - private static final String ff3cookiequery = "SELECT name,value,host,expiry,(lastAccessed/1000) as lastAccessed FROM moz_cookies"; + private static final String ffquery = "SELECT moz_historyvisits.id,url,title,visit_count,(visit_date/1000000) as visit_date,from_visit,(SELECT url FROM moz_places WHERE id=moz_historyvisits.from_visit) as ref FROM moz_places, moz_historyvisits WHERE moz_places.id = moz_historyvisits.place_id AND hidden = 0"; + private static final String ffcookiequery = "SELECT name,value,host,expiry,(lastAccessed/1000000) as lastAccessed,(creationTime/1000000) as creationTime FROM moz_cookies"; + private static final String ff3cookiequery = "SELECT name,value,host,expiry,(lastAccessed/1000000) as lastAccessed FROM moz_cookies"; private static final String ffbookmarkquery = "SELECT fk, moz_bookmarks.title, url FROM moz_bookmarks INNER JOIN moz_places ON moz_bookmarks.fk=moz_places.id"; - private static final String ffdownloadquery = "select target, source,(startTime/1000) as startTime, maxBytes from moz_downloads"; + private static final String ffdownloadquery = "select target, source,(startTime/1000000) as startTime, maxBytes from moz_downloads"; public int FireFoxCount = 0; public Firefox() { @@ -79,6 +79,7 @@ public class Firefox extends Extract implements IngestServiceImage { ContentUtils.writeToFile(FFSqlitedb.get(j), new File(currentCase.getTempDirectory() + File.separator + FFSqlitedb.get(j).getName().toString() + j + ".db")); } catch (Exception ex) { logger.log(Level.WARNING, "Error while trying to write out a sqlite db.{0}", ex); + this.addErrorMessage(this.getName() + ": Error while trying to analyze file:" + FFSqlitedb.get(j).getName()); } File dbFile = new File(temps); if (controller.isCancelled()) { @@ -121,6 +122,7 @@ public class Firefox extends Extract implements IngestServiceImage { ContentUtils.writeToFile(FFSqlitedb.get(j), new File(currentCase.getTempDirectory() + File.separator + FFSqlitedb.get(j).getName().toString() + j + ".db")); } catch (Exception ex) { logger.log(Level.WARNING, "Error while trying to write out a sqlite db.{0}", ex); + this.addErrorMessage(this.getName() + ": Error while trying to analyze file:" + FFSqlitedb.get(j).getName()); } File dbFile = new File(temps); if (controller.isCancelled()) { @@ -162,6 +164,7 @@ public class Firefox extends Extract implements IngestServiceImage { ContentUtils.writeToFile(FFSqlitedb.get(j), new File(currentCase.getTempDirectory() + File.separator + FFSqlitedb.get(j).getName().toString() + j + ".db")); } catch (Exception ex) { logger.log(Level.WARNING, "Error while trying to write out a sqlite db.{0}", ex); + this.addErrorMessage(this.getName() + ": Error while trying to analyze file:" + FFSqlitedb.get(j).getName()); } File dbFile = new File(temps); if (controller.isCancelled()) { @@ -219,6 +222,7 @@ public class Firefox extends Extract implements IngestServiceImage { ContentUtils.writeToFile(FFSqlitedb.get(j), new File(currentCase.getTempDirectory() + File.separator + FFSqlitedb.get(j).getName().toString() + j + ".db")); } catch (Exception ex) { logger.log(Level.WARNING, "Error while trying to write out a sqlite db.{0}", ex); + this.addErrorMessage(this.getName() + ": Error while trying to analyze file:" + FFSqlitedb.get(j).getName()); } File dbFile = new File(temps); if (controller.isCancelled()) { diff --git a/trove/release/modules/ext/trove-3.0.2.jar b/trove/release/modules/ext/trove-3.0.2.jar deleted file mode 100644 index 12fb57681f..0000000000 Binary files a/trove/release/modules/ext/trove-3.0.2.jar and /dev/null differ diff --git a/trove/src/org/gnu/trove/Bundle.properties b/trove/src/org/gnu/trove/Bundle.properties deleted file mode 100644 index c6178bf414..0000000000 --- a/trove/src/org/gnu/trove/Bundle.properties +++ /dev/null @@ -1 +0,0 @@ -OpenIDE-Module-Name=trove