DebugLog.log("LOG: full path: " + fullPaths[i]);
    public long log(String[] targetPaths, long startRevision, long endRevision,            boolean changedPath, boolean strictNode, long limit, ISVNLogEntryHandler handler) throws SVNException {        if (targetPaths == null || targetPaths.length == 0) {            return 0;        }        DAVLogHandler davHandler = null;		try {			openConnection();			String[] fullPaths = new String[targetPaths.length];						// convert these path to be all full paths 			for (int i = 0; i < targetPaths.length; i++) {				fullPaths[i] = getFullPath(targetPaths[i]);				DebugLog.log("LOG: full path: " + fullPaths[i]);            }			// now find common root, this will be request path.			String path = fullPaths.length > 1 ? PathUtil.getCommonRoot(fullPaths) : fullPaths[0];			if (!path.startsWith("/")) {				path = "/".concat(path);			}			DebugLog.log("LOG: request path: " + path);			// make fullPaths to be relative to common root.			for (int i = 0; i < targetPaths.length; i++) {				fullPaths[i] = fullPaths[i].substring(path.length());				fullPaths[i] = PathUtil.removeLeadingSlash(fullPaths[i]);                DebugLog.log("LOG: log path: " + fullPaths[i]);			}	        StringBuffer request = DAVLogHandler.generateLogRequest(null, startRevision, endRevision,	        		changedPath, strictNode, limit, fullPaths);	                    davHandler = new DAVLogHandler(handler); 			long revision = Math.max(startRevision, endRevision);            path = PathUtil.encode(path);            DAVBaselineInfo info = DAVUtil.getBaselineInfo(myConnection, path, revision, false, false, null);            path = PathUtil.append(info.baselineBase, info.baselinePath);            myConnection.doReport(path, request, davHandler);		} finally {			closeConnection();		}        return davHandler.getEntriesCount();    }