fullPath += dirname; fullPath += XPCOM_FILE_PATH_SEPARATOR; fullPath += entry->name;
NS_CStringAppendData(fullPath, dirname); NS_CStringAppendData(fullPath, XPCOM_FILE_PATH_SEPARATOR); NS_CStringAppendData(fullPath, entry->name);
GRE_GetPathFromConfigDir(const char* dirname, char* buffer){  // Open the directory provided and try to read any files in that  // directory that end with .conf.  We look for an entry that might  // point to the GRE that we're interested in.  PRDir *dir = PR_OpenDir(dirname);  if (!dir)    return nsnull;  PRBool found = PR_FALSE;  PRDirEntry *entry;  while (!found && (entry = PR_ReadDir(dir, PR_SKIP_BOTH))) {    // Only look for files that end in .conf    char *offset = PL_strrstr(entry->name, ".conf");    if (!offset)      continue;    if (offset != entry->name + strlen(entry->name) - 5)      continue;    nsEmbedCString fullPath;    fullPath += dirname;    fullPath += XPCOM_FILE_PATH_SEPARATOR;    fullPath += entry->name;    found = GRE_GetPathFromConfigFile(fullPath.get(), buffer);  }  PR_CloseDir(dir);  return found;}