diff options
| author | Eli Zaretskii | 2008-03-14 17:31:09 +0000 |
|---|---|---|
| committer | Eli Zaretskii | 2008-03-14 17:31:09 +0000 |
| commit | 294f1153b56701321c2dd9ef1aa2483b17dc4bf8 (patch) | |
| tree | c15c98e2c75bb52b635800c27f50394e8a3cb15f /src | |
| parent | ae0ece90c666ebd0f850481a0620744ba86dcb1f (diff) | |
| download | emacs-294f1153b56701321c2dd9ef1aa2483b17dc4bf8.tar.gz emacs-294f1153b56701321c2dd9ef1aa2483b17dc4bf8.zip | |
(Ffile_attributes) [WINDOWSNT]: Force inode be positive.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 2 | ||||
| -rw-r--r-- | src/dired.c | 10 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 1f429c49dc7..c9dd5c1535e 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,7 @@ | |||
| 1 | 2008-03-14 Eli Zaretskii <eliz@gnu.org> | 1 | 2008-03-14 Eli Zaretskii <eliz@gnu.org> |
| 2 | 2 | ||
| 3 | * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive. | ||
| 4 | |||
| 3 | * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change. | 5 | * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change. |
| 4 | 6 | ||
| 5 | 2008-03-14 Jason Rumney <jasonr@gnu.org> | 7 | 2008-03-14 Jason Rumney <jasonr@gnu.org> |
diff --git a/src/dired.c b/src/dired.c index 27292e91bff..36324519fff 100644 --- a/src/dired.c +++ b/src/dired.c | |||
| @@ -1021,7 +1021,17 @@ Elements of the attribute list are: | |||
| 1021 | values[9] = (gid != getegid ()) ? Qt : Qnil; | 1021 | values[9] = (gid != getegid ()) ? Qt : Qnil; |
| 1022 | #endif /* BSD4_2 (or BSD4_3) */ | 1022 | #endif /* BSD4_2 (or BSD4_3) */ |
| 1023 | /* Shut up GCC warnings in FIXNUM_OVERFLOW_P below. */ | 1023 | /* Shut up GCC warnings in FIXNUM_OVERFLOW_P below. */ |
| 1024 | #ifdef WINDOWSNT | ||
| 1025 | { | ||
| 1026 | /* The bit-shuffling we do in w32.c:stat can turn on the MSB, which | ||
| 1027 | will produce negative inode numbers. People don't like that, so | ||
| 1028 | force a positive inode instead. */ | ||
| 1029 | unsigned short tem = s.st_ino; | ||
| 1030 | ino = tem; | ||
| 1031 | } | ||
| 1032 | #else | ||
| 1024 | ino = s.st_ino; | 1033 | ino = s.st_ino; |
| 1034 | #endif | ||
| 1025 | if (FIXNUM_OVERFLOW_P (ino)) | 1035 | if (FIXNUM_OVERFLOW_P (ino)) |
| 1026 | /* To allow inode numbers larger than VALBITS, separate the bottom | 1036 | /* To allow inode numbers larger than VALBITS, separate the bottom |
| 1027 | 16 bits. */ | 1037 | 16 bits. */ |