From d6df1ec11a2accecc4d0b12ec7046ae2b1172549 Mon Sep 17 00:00:00 2001
From: Ann Priestman <apriestman@basistech.com>
Date: Tue, 29 Jan 2019 12:48:59 -0500
Subject: [PATCH] Removed absolute path arg

---
 .../java/src/org/sleuthkit/datamodel/AbstractFile.java   | 9 ++++-----
 .../java/src/org/sleuthkit/datamodel/DerivedFile.java    | 2 +-
 bindings/java/src/org/sleuthkit/datamodel/LocalFile.java | 2 +-
 3 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/bindings/java/src/org/sleuthkit/datamodel/AbstractFile.java b/bindings/java/src/org/sleuthkit/datamodel/AbstractFile.java
index c05331ed9..4ee740047 100644
--- a/bindings/java/src/org/sleuthkit/datamodel/AbstractFile.java
+++ b/bindings/java/src/org/sleuthkit/datamodel/AbstractFile.java
@@ -892,10 +892,8 @@ protected final int readLocal(byte[] buf, long offset, long len) throws TskCoreE
 	 * read() will read the file in the local path.
 	 *
 	 * @param localPath  local path to be set
-	 * @param isAbsolute true if the path is absolute, false if relative to the
-	 *                   case db
 	 */
-	void setLocalFilePath(String localPath, boolean isAbsolute) {
+	void setLocalFilePath(String localPath) {
 
 		if (localPath == null || localPath.equals("")) {
 			this.localPath = "";
@@ -903,7 +901,8 @@ void setLocalFilePath(String localPath, boolean isAbsolute) {
 			localPathSet = false;
 		} else {
 			this.localPath = localPath;
-			if (isAbsolute) {
+			if (localPath.startsWith("/") || localPath.startsWith("\\")
+					|| localPath.matches("[A-Za-z]:[/\\\\].*")) {
 				this.localAbsPath = localPath;
 			} else {
 				this.localAbsPath = getSleuthkitCase().getDbDirPath() + java.io.File.separator + this.localPath;
@@ -1256,7 +1255,7 @@ public short getAttrId() {
 	 */
 	@Deprecated
 	protected void setLocalPath(String localPath, boolean isAbsolute) {
-		setLocalFilePath(localPath, isAbsolute);
+		setLocalFilePath(localPath);
 	}
 
 	/*
diff --git a/bindings/java/src/org/sleuthkit/datamodel/DerivedFile.java b/bindings/java/src/org/sleuthkit/datamodel/DerivedFile.java
index ce60113e4..629a62432 100644
--- a/bindings/java/src/org/sleuthkit/datamodel/DerivedFile.java
+++ b/bindings/java/src/org/sleuthkit/datamodel/DerivedFile.java
@@ -103,7 +103,7 @@ public class DerivedFile extends AbstractFile {
 		super(db, objId, dataSourceObjectId, TskData.TSK_FS_ATTR_TYPE_ENUM.TSK_FS_ATTR_TYPE_DEFAULT, 0,
 				name, TSK_DB_FILES_TYPE_ENUM.LOCAL, 0L, 0, dirType, metaType, dirFlag,
 				metaFlags, size, ctime, crtime, atime, mtime, (short) 0, 0, 0, md5Hash, knownState, parentPath, mimeType, extension);
-		setLocalFilePath(localPath, false);
+		setLocalFilePath(localPath);
 		setEncodingType(encodingType);
 	}
 
diff --git a/bindings/java/src/org/sleuthkit/datamodel/LocalFile.java b/bindings/java/src/org/sleuthkit/datamodel/LocalFile.java
index d5fd6eac3..b174a5cd1 100644
--- a/bindings/java/src/org/sleuthkit/datamodel/LocalFile.java
+++ b/bindings/java/src/org/sleuthkit/datamodel/LocalFile.java
@@ -98,7 +98,7 @@ public class LocalFile extends AbstractFile {
 		if (parentId > 0) {
 			setParentId(parentId);
 		}
-		super.setLocalFilePath(localPath, true);
+		super.setLocalFilePath(localPath);
 		setEncodingType(encodingType);
 	}
 
-- 
GitLab