forked from Mirrors/btrfs-progs
btrfs-progs: send dump: use reentrant variant of localtime
Signed-off-by: David Sterba <dsterba@suse.com>master
parent
798cec84dd
commit
590d8b2ee5
|
@ -271,16 +271,15 @@ static int print_chown(const char *path, u64 uid, u64 gid, void *user)
|
||||||
|
|
||||||
static int sprintf_timespec(struct timespec *ts, char *dest, int max_size)
|
static int sprintf_timespec(struct timespec *ts, char *dest, int max_size)
|
||||||
{
|
{
|
||||||
struct tm *tm;
|
struct tm tm;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
tm = localtime(&ts->tv_sec);
|
if (!localtime_r(&ts->tv_sec, &tm)) {
|
||||||
if (!tm) {
|
|
||||||
error("failed to convert time %lld.%.9ld to local time",
|
error("failed to convert time %lld.%.9ld to local time",
|
||||||
(long long)ts->tv_sec, ts->tv_nsec);
|
(long long)ts->tv_sec, ts->tv_nsec);
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
ret = strftime(dest, max_size, "%FT%T%z", tm);
|
ret = strftime(dest, max_size, "%FT%T%z", &tm);
|
||||||
if (ret == 0) {
|
if (ret == 0) {
|
||||||
error(
|
error(
|
||||||
"time %lld.%ld is too long to convert into readable string",
|
"time %lld.%ld is too long to convert into readable string",
|
||||||
|
|
Loading…
Reference in New Issue