From a8f6393c8a0c8d27a35812c71865d7bbcc3edf30 Mon Sep 17 00:00:00 2001 From: Tim McIver Date: Tue, 8 Jan 2013 15:22:23 -0500 Subject: [PATCH] Made changes due to FsContent.getFileSystem now throwing TskCoreException. --- .../directorytree/ViewContextAction.java | 30 ++++++++----------- .../autopsy/ingest/IngestScheduler.java | 11 ++++++- 2 files changed, 22 insertions(+), 19 deletions(-) diff --git a/Core/src/org/sleuthkit/autopsy/directorytree/ViewContextAction.java b/Core/src/org/sleuthkit/autopsy/directorytree/ViewContextAction.java index 41bfe92763..fb9015e70e 100644 --- a/Core/src/org/sleuthkit/autopsy/directorytree/ViewContextAction.java +++ b/Core/src/org/sleuthkit/autopsy/directorytree/ViewContextAction.java @@ -162,31 +162,25 @@ class ViewContextAction extends AbstractAction { @Override public List visit(Directory drctr) { ret.add(drctr); - if (drctr.isRoot()) { - return visit(drctr.getFileSystem()); - } else { - try { - return drctr.getParentDirectory().accept(this); - } catch (TskException ex) { - logger.log(Level.WARNING, "Couldn't get directory's parent directory", ex); - } + Content parent = null; + try { + parent = drctr.getParent(); + } catch (TskCoreException ex) { + logger.log(Level.SEVERE, "Couldn't get parent of Directory: " + drctr, ex); } - return ret; + return parent.accept(this); } @Override public List visit(File file) { ret.add(file); - if (file.isRoot()) { - return visit(file.getFileSystem()); - } else { - try { - return file.getParentDirectory().accept(this); - } catch (TskException ex) { - logger.log(Level.WARNING, "Couldn't get file's parent directory", ex); - } + Content parent = null; + try { + parent = file.getParent(); + } catch (TskCoreException ex) { + logger.log(Level.SEVERE, "Couldn't get parent of File: " + file, ex); } - return ret; + return parent.accept(this); } @Override diff --git a/Core/src/org/sleuthkit/autopsy/ingest/IngestScheduler.java b/Core/src/org/sleuthkit/autopsy/ingest/IngestScheduler.java index 7e5e52662b..b796d1b3cc 100644 --- a/Core/src/org/sleuthkit/autopsy/ingest/IngestScheduler.java +++ b/Core/src/org/sleuthkit/autopsy/ingest/IngestScheduler.java @@ -606,7 +606,16 @@ class IngestScheduler { //skip files in root dir, starting with $, containing : (not default attributes) //with meta address < 32, i.e. some special large NTFS and FAT files - final TskData.TSK_FS_TYPE_ENUM fsType = f.getFileSystem().getFsType(); + FileSystem fs = null; + try { + fs = f.getFileSystem(); + } catch (TskCoreException ex) { + logger.log(Level.SEVERE, "Could not get FileSystem for " + f, ex); + } + TskData.TSK_FS_TYPE_ENUM fsType = TskData.TSK_FS_TYPE_ENUM.TSK_FS_TYPE_UNSUPP; + if (fs != null) { + fsType = fs.getFsType(); + } if ((fsType.getValue() & FAT_NTFS_FLAGS) == 0) { //not fat or ntfs, accept all files