diff --git a/bindings/java/src/org/sleuthkit/datamodel/FsContent.java b/bindings/java/src/org/sleuthkit/datamodel/FsContent.java
index e719063e2d2efbf5d1f73860266cd86e71330c79..e99bea9cd5271cf0b156edb93c5c840e934fe0eb 100644
--- a/bindings/java/src/org/sleuthkit/datamodel/FsContent.java
+++ b/bindings/java/src/org/sleuthkit/datamodel/FsContent.java
@@ -145,6 +145,10 @@ void setKnown(byte known) {
 
 	@Override
 	public int read(byte[] buf, long offset, long len) throws TskCoreException {
+		if (offset == 0 && size == 0) {
+			//special case for 0-size file
+			return 0;
+		}
 		synchronized (this) {
 			if (fileHandle == 0) {
 				fileHandle =