# HG changeset patch
# User Artem Tikhomirov <tikhomirov.artem@gmail.com>
# Date 1320809624 -3600
# Node ID 72c6eda838a62d3860a4832b7c81a3002cf6a781
# Parent  a37ce7145c3ff3c0b01b644d5b854e0b2d0281f6
NPE in HgDirstate.known() when no dirstate file present

diff -r a37ce7145c3f -r 72c6eda838a6 src/org/tmatesoft/hg/repo/HgDirstate.java
--- a/src/org/tmatesoft/hg/repo/HgDirstate.java	Sat Nov 05 04:21:18 2011 +0100
+++ b/src/org/tmatesoft/hg/repo/HgDirstate.java	Wed Nov 09 04:33:44 2011 +0100
@@ -75,6 +75,11 @@
 
 	private void read() {
 		normal = added = removed = merged = Collections.<Path, Record>emptyMap();
+		if (canonicalPathRewrite != null) {
+			canonical2dirstateName = new HashMap<Path,Path>();
+		} else {
+			canonical2dirstateName = Collections.emptyMap();
+		}
 		if (dirstateFile == null || !dirstateFile.exists()) {
 			return;
 		}
@@ -87,11 +92,6 @@
 		added = new LinkedHashMap<Path, Record>();
 		removed = new LinkedHashMap<Path, Record>();
 		merged = new LinkedHashMap<Path, Record>();
-		if (canonicalPathRewrite != null) {
-			canonical2dirstateName = new HashMap<Path,Path>();
-		} else {
-			canonical2dirstateName = Collections.emptyMap();
-		}
 		try {
 			parents = internalReadParents(da);
 			// hg init; hg up produces an empty repository where dirstate has parents (40 bytes) only