1
warning: ‘__builtin_snprintf’ output may be truncated before the last format character [-Wformat-truncation=]
  "%s", evspan->text);
     ^

len = strlen(evspan->text);
evspan->ent->content = malloc(len+1);

snprintf(evspan->ent->content, len,
"%s", evspan->text);

I saw this warning on gcc 8. How do I prevent this without using -Wformat-truncation option?

qwerty
  • 85
  • 2
  • 6

1 Answers1

0

The second argument to snprintf is the length of the buffer, not the maximum string length.

The call should be:

snprintf(evspan->ent->content, len + 1, "%s", evspan->text);

This matches the length passed to malloc.


The comments given on snprintf not being the best choice do apply, if your full code is as simple as what's shown here.

Thomas Jager
  • 4,836
  • 2
  • 16
  • 30