- mbr->path = filePath.str();
- sys::PathWithStatus PWS(mbr->path);
- const sys::FileStatus *FSInfo = PWS.getFileStatus(false, ErrMsg);
- if (!FSInfo) {
+ mbr->path = filePath;
+ sys::fs::file_status Status;
+ error_code EC = sys::fs::status(filePath, Status);
+ if (EC) {
+ delete mbr;
+ return true;
+ }
+ mbr->User = Status.getUser();
+ mbr->Group = Status.getGroup();
+ mbr->Mode = Status.permissions();
+ mbr->ModTime = Status.getLastModificationTime();
+ // FIXME: On posix this is a second stat.
+ EC = sys::fs::file_size(filePath, mbr->Size);
+ if (EC) {