Skip to content

Commit fb9e6dc

Browse files
committed
The device numbers in struct statx may be larger than dev_t
1 parent 616a694 commit fb9e6dc

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

file.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -662,7 +662,7 @@ rb_stat_dev(VALUE self)
662662
#if RUBY_USE_STATX
663663
unsigned int m = get_stat(self)->stx_dev_major;
664664
unsigned int n = get_stat(self)->stx_dev_minor;
665-
return DEVT2NUM(makedev(m, n));
665+
return ULL2NUM(makedev(m, n));
666666
#elif SIZEOF_STRUCT_STAT_ST_DEV <= SIZEOF_DEV_T
667667
return DEVT2NUM(get_stat(self)->st_dev);
668668
#elif SIZEOF_STRUCT_STAT_ST_DEV <= SIZEOF_LONG
@@ -833,7 +833,7 @@ rb_stat_rdev(VALUE self)
833833
#if RUBY_USE_STATX
834834
unsigned int m = get_stat(self)->stx_rdev_major;
835835
unsigned int n = get_stat(self)->stx_rdev_minor;
836-
return DEVT2NUM(makedev(m, n));
836+
return ULL2NUM(makedev(m, n));
837837
#elif !defined(HAVE_STRUCT_STAT_ST_RDEV)
838838
return Qnil;
839839
#elif SIZEOF_STRUCT_STAT_ST_RDEV <= SIZEOF_DEV_T

0 commit comments

Comments
 (0)