2008-03-12 Corinna Vinschen <corinna@vinschen.de>
+ * fhandler_disk_file.cc (fhandler_disk_file::readdir_helper): Don't
+ copy filename twice in the non-managed case.
+
+2008-03-12 Corinna Vinschen <corinna@vinschen.de>
+
* winsup.h (NT_MAX_PATH): Revert ill-advised change to 32767.
Accommodate change throughout.
}
}
- char tmp[NAME_MAX + 1];
- sys_wcstombs (tmp, NAME_MAX + 1, fname->Buffer,
- fname->Length / sizeof (WCHAR));
if (pc.isencoded ())
- fnunmunge (de->d_name, tmp);
+ {
+ char tmp[NAME_MAX + 1];
+ sys_wcstombs (tmp, NAME_MAX + 1, fname->Buffer,
+ fname->Length / sizeof (WCHAR));
+ fnunmunge (de->d_name, tmp);
+ }
else
- strcpy (de->d_name, tmp);
- if (dir->__d_position == 0 && !strcmp (tmp, "."))
+ sys_wcstombs (de->d_name, NAME_MAX + 1, fname->Buffer,
+ fname->Length / sizeof (WCHAR));
+
+ if (dir->__d_position == 0 && !strcmp (de->d_name, "."))
dir->__flags |= dirent_saw_dot;
- else if (dir->__d_position == 1 && !strcmp (tmp, ".."))
+ else if (dir->__d_position == 1 && !strcmp (de->d_name, ".."))
dir->__flags |= dirent_saw_dot_dot;
return 0;
}