1// introduced by d6c855caa88ddb1ab6e24e23a14b1e7baf4ba9c7 2018-09-15 2// sscanf may crash on short input 3#include <stdio.h> 4#include "test.h" 5 6int main(void) 7{ 8 const char *s = "0"; 9 const char *fmt = "%f%c"; 10 float f = 1.0f; 11 char c = 'x'; 12 int r = sscanf(s, fmt, &f, &c); 13 if (r != 1) 14 t_error("sscanf(\"%s\", \"%s\",..) returned %d, wanted 1\n", s, fmt, r); 15 if (f != 0.0f || c != 'x') 16 t_error("sscanf(\"%s\", \"%s\",..) assigned f=%f c='%c', wanted i=0 c='x'\n", s, fmt, f, c); 17 return t_status; 18} 19