Program: 168565
Project: 168565
Buggy source:
CommonHFSCatalogLeafRecord getRecord(CommonHFSCatalogFolderRecord rootRecord,String... path){
  CommonHFSCatalogFolderRecord curFolder=rootRecord;
  for (int i=0; i < path.length; ++i) {
    String curPathComponent=path[i];
    final CommonHFSCatalogLeafRecord originalFolder=curFolder;
    CommonHFSCatalogLeafRecord[] subRecords=view.listRecords(curFolder);
    for (    CommonHFSCatalogLeafRecord subRecord : subRecords) {
      if (getProperNodeName(subRecord).equals(curPathComponent)) {
        if (i == path.length - 1) {
          return subRecord;
        }
 else         if (subRecord instanceof CommonHFSCatalogFolderRecord) {
          curFolder=(CommonHFSCatalogFolderRecord)subRecord;
          break;
        }
 else         if (subRecord instanceof CommonHFSCatalogFileRecord) {
          CommonHFSCatalogFileRecord fr=(CommonHFSCatalogFileRecord)subRecord;
          final String[] absPath;
          if (fr.getData().isSymbolicLink()) {
            byte[] data=Util.readFully(getReadableDataForkStream(fr));
            String posixPath=Util.readString(data,"String_Node_Str");
            String[] basePath=Util.arrayCopy(path,0,new String[path.length],0,i + 1);
            absPath=getTruePathFromPosixPath(posixPath,basePath);
          }
 else           if (fr.getData().isHardFileLink()) {
            absPath=new String[]{FILE_HARD_LINK_DIR,FILE_HARD_LINK_PREFIX + fr.getData().getHardLinkInode()};
          }
 else           if (fr.getData().isHardDirectoryLink()) {
            absPath=new String[]{DIRECTORY_HARD_LINK_DIR,DIRECTORY_HARD_LINK_PREFIX + fr.getData().getHardLinkInode()};
          }
 else           return null;
          CommonHFSCatalogLeafRecord linkTarget=getRecord(curFolder,absPath);
          if (linkTarget instanceof CommonHFSCatalogFolderRecord)           curFolder=(CommonHFSCatalogFolderRecord)linkTarget;
 else           return null;
        }
      }
    }
    if (curFolder == originalFolder)     return null;
  }
  if (path.length == 0)   return rootRecord;
 else   throw new RuntimeException("String_Node_Str");
}

Fixed version (ground truth):
CommonHFSCatalogLeafRecord getRecord(CommonHFSCatalogFolderRecord rootRecord,String... path){
  String prefix=globalPrefix;
  globalPrefix+="String_Node_Str";
  System.err.println(prefix + "String_Node_Str" + (rootRecord != null ? rootRecord.getKey().getParentID().toLong() + "String_Node_Str" + getProperNodeName(rootRecord)+ "String_Node_Str" : "String_Node_Str")+ "String_Node_Str"+ (path != null ? "String_Node_Str" + Util.concatenateStrings(path,"String_Node_Str") + "String_Node_Str" : "String_Node_Str")+ "String_Node_Str");
  try {
    CommonHFSCatalogFolderRecord curFolder=rootRecord;
    for (int i=0; i < path.length; ++i) {
      String curPathComponent=path[i];
      System.err.println(prefix + "String_Node_Str" + (i + 1)+ "String_Node_Str"+ path.length+ "String_Node_Str"+ curPathComponent+ "String_Node_Str");
      final CommonHFSCatalogLeafRecord originalFolder=curFolder;
      CommonHFSCatalogLeafRecord[] subRecords=view.listRecords(curFolder);
      for (      final CommonHFSCatalogLeafRecord subRecord : subRecords) {
        if (getProperNodeName(subRecord).equals(curPathComponent)) {
          CommonHFSCatalogLeafRecord curRecord=subRecord;
          if (curRecord instanceof CommonHFSCatalogFileRecord) {
            CommonHFSCatalogFileRecord fr=(CommonHFSCatalogFileRecord)curRecord;
            String[] absPath=null;
            if (fr.getData().isSymbolicLink()) {
              byte[] data=Util.readFully(getReadableDataForkStream(fr));
              String posixPath=Util.readString(data,"String_Node_Str");
              String[] basePath=Util.arrayCopy(path,0,new String[i],0,i);
              absPath=getTruePathFromPosixPath(posixPath,basePath);
              System.err.println(prefix + "String_Node_Str" + Util.concatenateStrings(absPath,"String_Node_Str"));
              if (absPath == null)               return null;
            }
 else             if (fr.getData().isHardFileLink()) {
              absPath=new String[]{FILE_HARD_LINK_DIR,FILE_HARD_LINK_PREFIX + fr.getData().getHardLinkInode()};
            }
 else             if (fr.getData().isHardDirectoryLink()) {
              absPath=new String[]{DIRECTORY_HARD_LINK_DIR,DIRECTORY_HARD_LINK_PREFIX + fr.getData().getHardLinkInode()};
            }
            if (absPath != null) {
              System.err.println(prefix + "String_Node_Str");
              CommonHFSCatalogLeafRecord linkTarget=getRecord(view.getRoot(),absPath);
              System.err.println(prefix + "String_Node_Str" + linkTarget);
              if (linkTarget != null)               curRecord=linkTarget;
            }
          }
          if (i == path.length - 1) {
            System.err.println(prefix + "String_Node_Str" + curRecord);
            return curRecord;
          }
 else           if (curRecord instanceof CommonHFSCatalogFolderRecord) {
            curFolder=(CommonHFSCatalogFolderRecord)curRecord;
            break;
          }
 else           return null;
        }
      }
      if (curFolder == originalFolder)       return null;
    }
    if (path.length == 0)     return rootRecord;
 else     throw new RuntimeException("String_Node_Str");
  }
  finally {
    System.err.println(prefix + "String_Node_Str");
    globalPrefix=prefix;
  }
}