Toplevel = StrLength(BaseKey) == 0;
SubDirectory = NewStrBuf();
SubKey = NewStrBuf();
- FileName = NewStrBuf();
+ FileName = NewStrBufPlain(NULL, PATH_MAX);
Key = NewStrBuf();
while ((readdir_r(filedir, d, &filedir_entry) == 0) &&
(filedir_entry != NULL))
case DT_DIR:
/* Skip directories we are not interested in... */
if (strcmp(filedir_entry->d_name, ".svn") == 0)
- break;
+ continue;
FlushStrBuf(SubKey);
if (!Toplevel) {
d_without_ext --;
if ((d_without_ext == 0) || (d_namelen < 3))
continue;
- if ((d_namelen > 1) && filedir_entry->d_name[d_namelen - 1] == '~')
+ if (((d_namelen > 1) && filedir_entry->d_name[d_namelen - 1] == '~') ||
+ (strcmp(&filedir_entry->d_name[d_without_ext], ".orig") == 0) ||
+ (strcmp(&filedir_entry->d_name[d_without_ext], ".swp") == 0))
continue; /* Ignore backup files... */
/* .m.xxx is for mobile useragents! */
if (d_without_ext > 2)