Skip to content

Commit 7f48500

Browse files
committed
Format: replaces format specifiers with type-safe append functions
1 parent a7eecf6 commit 7f48500

File tree

1 file changed

+8
-14
lines changed

1 file changed

+8
-14
lines changed

src/common/format.c

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -11,37 +11,31 @@ void ffFormatAppendFormatArg(FFstrbuf* buffer, const FFformatarg* formatarg)
1111
switch(formatarg->type)
1212
{
1313
case FF_FORMAT_ARG_TYPE_INT:
14-
ffStrbufAppendF(buffer, "%" PRIi32, *(int32_t*)formatarg->value);
14+
ffStrbufAppendSInt(buffer, *(int32_t*)formatarg->value);
1515
break;
1616
case FF_FORMAT_ARG_TYPE_UINT:
17-
ffStrbufAppendF(buffer, "%" PRIu32, *(uint32_t*)formatarg->value);
17+
ffStrbufAppendUInt(buffer, *(uint32_t*)formatarg->value);
1818
break;
1919
case FF_FORMAT_ARG_TYPE_UINT64:
20-
ffStrbufAppendF(buffer, "%" PRIu64, *(uint64_t*)formatarg->value);
20+
ffStrbufAppendUInt(buffer, *(uint64_t*)formatarg->value);
2121
break;
2222
case FF_FORMAT_ARG_TYPE_UINT16:
23-
ffStrbufAppendF(buffer, "%" PRIu16, *(uint16_t*)formatarg->value);
23+
ffStrbufAppendUInt(buffer, *(uint16_t*)formatarg->value);
2424
break;
2525
case FF_FORMAT_ARG_TYPE_UINT8:
26-
ffStrbufAppendF(buffer, "%" PRIu8, *(uint8_t*)formatarg->value);
26+
ffStrbufAppendUInt(buffer, *(uint8_t*)formatarg->value);
2727
break;
2828
case FF_FORMAT_ARG_TYPE_STRING:
2929
ffStrbufAppendS(buffer, (const char*)formatarg->value);
3030
break;
3131
case FF_FORMAT_ARG_TYPE_STRBUF:
32-
ffStrbufAppend(buffer, (FFstrbuf*)formatarg->value);
32+
ffStrbufAppend(buffer, (const FFstrbuf*)formatarg->value);
3333
break;
3434
case FF_FORMAT_ARG_TYPE_FLOAT:
35-
if (instance.config.display.fractionNdigits >= 0)
36-
ffStrbufAppendF(buffer, "%.*f", instance.config.display.fractionNdigits, *(float*)formatarg->value);
37-
else
38-
ffStrbufAppendF(buffer, "%g", *(float*)formatarg->value);
35+
ffStrbufAppendDouble(buffer, *(float*)formatarg->value, instance.config.display.fractionNdigits);
3936
break;
4037
case FF_FORMAT_ARG_TYPE_DOUBLE:
41-
if (instance.config.display.fractionNdigits >= 0)
42-
ffStrbufAppendF(buffer, "%.*f", instance.config.display.fractionNdigits, *(double*)formatarg->value);
43-
else
44-
ffStrbufAppendF(buffer, "%g", *(double*)formatarg->value);
38+
ffStrbufAppendDouble(buffer, *(double*)formatarg->value, instance.config.display.fractionNdigits);
4539
break;
4640
case FF_FORMAT_ARG_TYPE_BOOL:
4741
ffStrbufAppendS(buffer, *(bool*)formatarg->value ? "true" : "false");

0 commit comments

Comments
 (0)