url = resource.getRepository().getUrl(); try { ISVNLogMessage[] tmpMessage = client.getLogMessages(url, getRevision(), getRevision(), true); changePaths = tmpMessage[0].getChangedPaths(); } catch(SVNClientException ce) {   url = resource.getRepository().getUrl(); ISVNLogMessage[] tmpMessage = client.getLogMessages(url, getRevision(), getRevision(), true); changePaths = tmpMessage[0].getChangedPaths(); resource.getRepository().setRepositoryRoot(url);
url = updateRootUrl(resource); changePaths = getPathsOnDemand(url); if (changePaths == null) {   SVNUrl url2 = updateRootUrl(resource); if (!url.toString().equals(url2.toString())) changePaths = getPathsOnDemand(url);  if (changePaths == null) changePaths = getPathsOnDemand(resource.getUrl());   if (changePaths == null) changePaths = new ISVNLogMessageChangePath[0];
    public LogEntryChangePath[] getLogEntryChangePaths() {    	ISVNLogMessageChangePath[] changePaths = null;    	if (SVNProviderPlugin.getPlugin().getSVNClientManager().isFetchChangePathOnDemand()) {    	try {    		ISVNClientAdapter client = resource.getRepository().getSVNClient();    		SVNUrl url = resource.getRepository().getRepositoryRoot();    		if (url == null)    		    url = resource.getRepository().getUrl();    		try {	    		ISVNLogMessage[] tmpMessage = client.getLogMessages(url, getRevision(), getRevision(), true);	    		changePaths = tmpMessage[0].getChangedPaths();    		} catch(SVNClientException ce) {    		    // Root URL is probably bad.  Use the repository URL and change the root URL to    		    // be equal to the repository URL.    		    url = resource.getRepository().getUrl();        		ISVNLogMessage[] tmpMessage = client.getLogMessages(url, getRevision(), getRevision(), true);        		changePaths = tmpMessage[0].getChangedPaths();    		    resource.getRepository().setRepositoryRoot(url);    		}		} catch (SVNException e) {			e.printStackTrace();			changePaths = new ISVNLogMessageChangePath[0];		} catch (SVNClientException e) {			e.printStackTrace();			changePaths = new ISVNLogMessageChangePath[0];		}    	} else {    		changePaths = logMessage.getChangedPaths();    	}		        LogEntryChangePath[] logEntryChangePaths = new LogEntryChangePath[changePaths.length];         for (int i = 0; i < changePaths.length; i++) {        	logEntryChangePaths[i] = new LogEntryChangePath(this,changePaths[i]);        }        return logEntryChangePaths;    }