mirror of git://sourceware.org/git/glibc.git
Properly convert f_fsid in statvfs
This commit is contained in:
parent
315970f6ca
commit
c21cc9bcb3
|
@ -1,3 +1,9 @@
|
||||||
|
2010-09-27 Andreas Schwab <schwab@redhat.com>
|
||||||
|
|
||||||
|
[BZ #11611]
|
||||||
|
* sysdeps/unix/sysv/linux/internal_statvfs.c (INTERNAL_STATVFS):
|
||||||
|
Mask out sign-bit copies when constructing f_fsid.
|
||||||
|
|
||||||
2010-09-24 Petr Baudis <pasky@suse.cz>
|
2010-09-24 Petr Baudis <pasky@suse.cz>
|
||||||
|
|
||||||
* debug/stack_chk_fail_local.c: Add missing licence exception.
|
* debug/stack_chk_fail_local.c: Add missing licence exception.
|
||||||
|
|
|
@ -228,7 +228,8 @@ INTERNAL_STATVFS (const char *name, struct STATVFS *buf,
|
||||||
buf->f_files = fsbuf->f_files;
|
buf->f_files = fsbuf->f_files;
|
||||||
buf->f_ffree = fsbuf->f_ffree;
|
buf->f_ffree = fsbuf->f_ffree;
|
||||||
if (sizeof (buf->f_fsid) == sizeof (fsbuf->f_fsid))
|
if (sizeof (buf->f_fsid) == sizeof (fsbuf->f_fsid))
|
||||||
buf->f_fsid = (fsbuf->f_fsid.__val[0]
|
buf->f_fsid = ((fsbuf->f_fsid.__val[0]
|
||||||
|
& ((1UL << (8 * sizeof (fsbuf->f_fsid.__val[0]))) - 1))
|
||||||
| ((unsigned long int) fsbuf->f_fsid.__val[1]
|
| ((unsigned long int) fsbuf->f_fsid.__val[1]
|
||||||
<< (8 * (sizeof (buf->f_fsid)
|
<< (8 * (sizeof (buf->f_fsid)
|
||||||
- sizeof (fsbuf->f_fsid.__val[0])))));
|
- sizeof (fsbuf->f_fsid.__val[0])))));
|
||||||
|
|
Loading…
Reference in New Issue