Switch to side-by-side view

--- a/src/index/rclmonrcv.cpp
+++ b/src/index/rclmonrcv.cpp
@@ -179,6 +179,10 @@
 	    LOGERR(("rclMonRcvRun: tree walk failed\n"));
 	    goto terminate;
 	}
+	if (walker.getErrCnt() > 0) {
+	    LOGINFO(("rclMonRcvRun: fs walker errors: %s\n", 
+		     walker.getReason().c_str()));
+	}
     }
 
     {
@@ -218,9 +222,13 @@
 		    LOGDEB(("rclMonRcvRun: walking new dir %s\n", 
 			    ev.m_path.c_str()));
 		    if (walker.walk(ev.m_path, walkcb) != FsTreeWalker::FtwOk) {
-			LOGERR(("rclMonRcvRun: failed walking new dir %s\n", 
-				ev.m_path.c_str()));
+			LOGERR(("rclMonRcvRun: walking new dir %s: %s\n", 
+				ev.m_path.c_str(), walker.getReason().c_str()));
 			goto terminate;
+		    }
+		    if (walker.getErrCnt() > 0) {
+			LOGINFO(("rclMonRcvRun: fs walker errors: %s\n", 
+				 walker.getReason().c_str()));
 		    }
 		}
 	    }
@@ -241,7 +249,7 @@
 bool eraseWatchSubTree(map<int, string>& idtopath, const string& top)
 {
     bool found = false;
-    LOGDEB0(("Clearing map for [%s]\n", top.c_str()));
+    MONDEB(("Clearing map for [%s]\n", top.c_str()));
     map<int,string>::iterator it = idtopath.begin();
     while (it != idtopath.end()) {
 	if (it->second.find(top) == 0) {
@@ -461,8 +469,8 @@
 	ev.m_etyp = RclMonEvent::RCLEVT_DELETE;
 	// We would like to signal a directory here to enable cleaning
 	// the subtree (on a dir move), but can't test the actual file
-	// which is gone. Let's rely on the fact that a directory
-	// should be watched
+	// which is gone, and fam doesn't tell us if it's a dir or reg. 
+	// Let's rely on the fact that a directory should be watched
 	if (eraseWatchSubTree(m_idtopath, ev.m_path)) 
 	    ev.m_etyp |= RclMonEvent::RCLEVT_ISDIR;
 	break;