SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.UNKNOWN, "Unknown bug in addFile()"); SVNErrorManager.error(err);
    public void addFile(String path, String copyFromPath, long copyFromRevision) throws SVNException{        EntryBaton baton = new EntryBaton();        pathsToFileBatons.put(path, baton);        String absPath = myRepos.getRepositoryPath(path);        SVNLogEntryPath changedPath = (SVNLogEntryPath)myChangedPaths.get(absPath);        if(changedPath != null && changedPath.getType() == 'A' && changedPath.getCopyPath() != null && changedPath.getCopyRevision() >= 0){            baton.myPropsAct = DECIDE;            baton.myTextAct = ACCEPT;            if(areFileContentsEqual(absPath, myCurrentRevision, changedPath.getCopyPath(), changedPath.getCopyRevision())){                baton.myTextAct = IGNORE;            }            HashMap props = new HashMap();            SVNRepository rep = SVNRepositoryFactory.create(myRepos.getLocation());            rep.getDir(changedPath.getCopyPath(), changedPath.getCopyRevision(), props, (Collection)null);            baton.myProps = props;            myCommitEditor.addFile(path, changedPath.getCopyPath(), changedPath.getCopyRevision());            return;        }else if(changedPath != null && (changedPath.getType() == 'A' || changedPath.getType() == 'R')){            baton.myPropsAct = ACCEPT;            baton.myTextAct = ACCEPT;            myCommitEditor.addFile(path, null, -1);            return;        }else if(changedPath != null && changedPath.getType() == 'M'){            baton.myPropsAct = DECIDE;            baton.myTextAct = ACCEPT;            SVNLogEntryPath realPath = getFileCopyOrigin(absPath);            if(realPath == null){                SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.UNKNOWN, "Unknown error, can't get the copy origin of a file");                SVNErrorManager.error(err);            }            if(areFileContentsEqual(absPath, myCurrentRevision, realPath.getCopyPath(), realPath.getCopyRevision())){                baton.myTextAct = IGNORE;            }            HashMap props = new HashMap();            SVNRepository rep = SVNRepositoryFactory.create(myRepos.getLocation());            rep.getDir(realPath.getCopyPath(), realPath.getCopyRevision(), props, (Collection)null);            baton.myProps = props;            myCommitEditor.openFile(path, myCurrentRevision);            return;        }else if(changedPath == null){            baton.myPropsAct = IGNORE;            baton.myTextAct = IGNORE;            myCommitEditor.openFile(path, myCurrentRevision);            return;        }        SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.UNKNOWN, "Unknown bug in addFile()");        SVNErrorManager.error(err);    }