Merge branch 'ab/strbuf-addftime-tzname-boolify'
strbuf_addftime() is further getting tweaked. * ab/strbuf-addftime-tzname-boolify: strbuf: change an always NULL/"" strbuf_addftime() param to bool strbuf.h comment: discuss strbuf_addftime() arguments in order
This commit is contained in:
commit
6ba649e408
2
date.c
2
date.c
@ -256,7 +256,7 @@ const char *show_date(timestamp_t time, int tz, const struct date_mode *mode)
|
|||||||
tm->tm_hour, tm->tm_min, tm->tm_sec, tz);
|
tm->tm_hour, tm->tm_min, tm->tm_sec, tz);
|
||||||
else if (mode->type == DATE_STRFTIME)
|
else if (mode->type == DATE_STRFTIME)
|
||||||
strbuf_addftime(&timebuf, mode->strftime_fmt, tm, tz,
|
strbuf_addftime(&timebuf, mode->strftime_fmt, tm, tz,
|
||||||
mode->local ? NULL : "");
|
!mode->local);
|
||||||
else
|
else
|
||||||
strbuf_addf(&timebuf, "%.3s %.3s %d %02d:%02d:%02d %d%c%+05d",
|
strbuf_addf(&timebuf, "%.3s %.3s %d %02d:%02d:%02d %d%c%+05d",
|
||||||
weekday_names[tm->tm_wday],
|
weekday_names[tm->tm_wday],
|
||||||
|
5
strbuf.c
5
strbuf.c
@ -779,7 +779,7 @@ char *xstrfmt(const char *fmt, ...)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void strbuf_addftime(struct strbuf *sb, const char *fmt, const struct tm *tm,
|
void strbuf_addftime(struct strbuf *sb, const char *fmt, const struct tm *tm,
|
||||||
int tz_offset, const char *tz_name)
|
int tz_offset, int suppress_tz_name)
|
||||||
{
|
{
|
||||||
struct strbuf munged_fmt = STRBUF_INIT;
|
struct strbuf munged_fmt = STRBUF_INIT;
|
||||||
size_t hint = 128;
|
size_t hint = 128;
|
||||||
@ -808,8 +808,7 @@ void strbuf_addftime(struct strbuf *sb, const char *fmt, const struct tm *tm,
|
|||||||
fmt++;
|
fmt++;
|
||||||
break;
|
break;
|
||||||
case 'Z':
|
case 'Z':
|
||||||
if (tz_name) {
|
if (suppress_tz_name) {
|
||||||
strbuf_addstr(&munged_fmt, tz_name);
|
|
||||||
fmt++;
|
fmt++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
5
strbuf.h
5
strbuf.h
@ -334,14 +334,15 @@ extern void strbuf_vaddf(struct strbuf *sb, const char *fmt, va_list ap);
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Add the time specified by `tm`, as formatted by `strftime`.
|
* Add the time specified by `tm`, as formatted by `strftime`.
|
||||||
* `tz_name` is used to expand %Z internally unless it's NULL.
|
|
||||||
* `tz_offset` is in decimal hhmm format, e.g. -600 means six hours west
|
* `tz_offset` is in decimal hhmm format, e.g. -600 means six hours west
|
||||||
* of Greenwich, and it's used to expand %z internally. However, tokens
|
* of Greenwich, and it's used to expand %z internally. However, tokens
|
||||||
* with modifiers (e.g. %Ez) are passed to `strftime`.
|
* with modifiers (e.g. %Ez) are passed to `strftime`.
|
||||||
|
* `suppress_tz_name`, when set, expands %Z internally to the empty
|
||||||
|
* string rather than passing it to `strftime`.
|
||||||
*/
|
*/
|
||||||
extern void strbuf_addftime(struct strbuf *sb, const char *fmt,
|
extern void strbuf_addftime(struct strbuf *sb, const char *fmt,
|
||||||
const struct tm *tm, int tz_offset,
|
const struct tm *tm, int tz_offset,
|
||||||
const char *tz_name);
|
int suppress_tz_name);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Read a given size of data from a FILE* pointer to the buffer.
|
* Read a given size of data from a FILE* pointer to the buffer.
|
||||||
|
Loading…
Reference in New Issue
Block a user