From: Paul Eggert Date: Thu, 2 Jun 2011 06:21:13 +0000 (-0700) Subject: * dired.c (Ffile_attributes): Don't assume EMACS_INT has >32 bits. X-Git-Tag: emacs-pretest-24.0.90~104^2~618^2~8^2~14^2 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=76118f10b098e0cf03050b277401b8646dce5706;p=emacs.git * dired.c (Ffile_attributes): Don't assume EMACS_INT has >32 bits. --- diff --git a/src/ChangeLog b/src/ChangeLog index 708e08135be..44c9db28d58 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,7 @@ 2011-06-02 Paul Eggert + * dired.c (Ffile_attributes): Don't assume EMACS_INT has >32 bits. + * lisp.h: Include , as it'll useful in later changes. * character.c, data.c, editfns.c, insdel.c, intervals.c: Don't include , since lisp.h does. diff --git a/src/dired.c b/src/dired.c index 60d7bc64974..1e587353f6d 100644 --- a/src/dired.c +++ b/src/dired.c @@ -1013,12 +1013,11 @@ so last access time will always be midnight of that day. */) The code on the next line avoids a compiler warning on systems where st_ino is 32 bit wide. (bug#766). */ EMACS_INT high_ino = s.st_ino >> 31 >> 1; - EMACS_INT low_ino = s.st_ino & 0xffffffff; values[10] = Fcons (make_number (high_ino >> 8), Fcons (make_number (((high_ino & 0xff) << 16) - + (low_ino >> 16)), - make_number (low_ino & 0xffff))); + + (s.st_ino >> 16 & 0xffff)), + make_number (s.st_ino & 0xffff))); } /* Likewise for device. */