Skip to content
This repository was archived by the owner on Nov 8, 2023. It is now read-only.

Commit a4e774c

Browse files
committed
Add sys/stat.h compatibility macros for old NDKs.
Test: make checkbuild Bug: android/ndk#417 Change-Id: I04fdb2f31131e87907adab9f3264b783917de542
1 parent 8c67f1e commit a4e774c

File tree

2 files changed

+10
-6
lines changed

2 files changed

+10
-6
lines changed

libc/arch-mips64/bionic/stat.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,11 @@ struct kernel_stat {
4343
unsigned int st_pad1[3];
4444
__kernel_off_t st_size;
4545
unsigned int _st_atime;
46-
unsigned int st_atime_nsec;
46+
unsigned int _st_atime_nsec;
4747
unsigned int _st_mtime;
48-
unsigned int st_mtime_nsec;
48+
unsigned int _st_mtime_nsec;
4949
unsigned int _st_ctime;
50-
unsigned int st_ctime_nsec;
50+
unsigned int _st_ctime_nsec;
5151
unsigned int st_blksize;
5252
unsigned int st_pad2;
5353
unsigned long st_blocks;
@@ -65,11 +65,11 @@ static void copy_stat(struct stat* st, struct kernel_stat* s) {
6565
st->st_blksize = static_cast<int>(s->st_blksize);
6666
st->st_blocks = static_cast<long>(s->st_blocks);
6767
st->st_atim.tv_sec = static_cast<time_t>(s->_st_atime);
68-
st->st_atim.tv_nsec = static_cast<long>(s->st_atime_nsec);
68+
st->st_atim.tv_nsec = static_cast<long>(s->_st_atime_nsec);
6969
st->st_mtim.tv_sec = static_cast<time_t>(s->_st_mtime);
70-
st->st_mtim.tv_nsec = static_cast<long>(s->st_mtime_nsec);
70+
st->st_mtim.tv_nsec = static_cast<long>(s->_st_mtime_nsec);
7171
st->st_ctim.tv_sec = static_cast<time_t>(s->_st_ctime);
72-
st->st_ctim.tv_nsec = static_cast<long>(s->st_ctime_nsec);
72+
st->st_ctim.tv_nsec = static_cast<long>(s->_st_ctime_nsec);
7373
}
7474

7575
int fstat(int fp, struct stat* st) {

libc/include/sys/stat.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,10 @@ struct stat64 { __STAT64_BODY };
127127
#define st_atimensec st_atim.tv_nsec
128128
#define st_mtimensec st_mtim.tv_nsec
129129
#define st_ctimensec st_ctim.tv_nsec
130+
/* Compatibility with Linux headers and old NDKs. */
131+
#define st_atime_nsec st_atim.tv_nsec
132+
#define st_mtime_nsec st_mtim.tv_nsec
133+
#define st_ctime_nsec st_ctim.tv_nsec
130134

131135
#if defined(__USE_BSD)
132136
/* Permission macros provided by glibc for compatibility with BSDs. */

0 commit comments

Comments
 (0)