| Index: runtime/bin/file_linux.cc
|
| diff --git a/runtime/bin/file_linux.cc b/runtime/bin/file_linux.cc
|
| index 4f7ab5c3a6492849a4c3cd856aa164817e315ec2..cb0d66e222998911d7f0c1622218c598a8d2d099 100644
|
| --- a/runtime/bin/file_linux.cc
|
| +++ b/runtime/bin/file_linux.cc
|
| @@ -419,6 +419,12 @@ void File::Stat(const char* name, int64_t* data) {
|
| time_t File::LastModified(const char* name) {
|
| struct stat64 st;
|
| if (TEMP_FAILURE_RETRY(stat64(name, &st)) == 0) {
|
| + // Signal an error if it's a directory.
|
| + if (S_ISDIR(st.st_mode)) {
|
| + errno = EISDIR;
|
| + return -1;
|
| + }
|
| + // Otherwise assume the caller knows what it's doing.
|
| return st.st_mtime;
|
| }
|
| return -1;
|
|
|