mirror of
https://github.com/ostreedev/ostree.git
synced 2024-12-22 17:35:55 +03:00
switchroot: Fix building with musl libc
POSIX and GNU define conflicting versions of `strerror_r`. The GNU version returns the string but doesn't necessilary write into buf. The POSIX version writes into buf and returns the length but doesn't necessilary append a terminate the string with a NUL if it's too long to fit in buf. This commit fixes building ostree-prepare-root with musl libc. The stripped static build with musl on my machine is 30K vs. 724K with glibc static and 11K with glibc shared. Closes: #477 Approved by: cgwalters
This commit is contained in:
parent
a269075724
commit
faee3df8ae
@ -40,7 +40,13 @@ perrorv (const char *format, ...)
|
||||
char buf[1024];
|
||||
char *p;
|
||||
|
||||
#ifdef _GNU_SOURCE
|
||||
p = strerror_r (errno, buf, sizeof (buf));
|
||||
#else
|
||||
strerror_r (errno, buf, sizeof (buf));
|
||||
buf[sizeof (buf) - 1] = '\0';
|
||||
p = buf;
|
||||
#endif /* _GNU_SOURCE */
|
||||
|
||||
va_start (args, format);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user