In commit
4eee38a ("BUILD/MINOR: tools: fix build warning in the date
conversion functions") we added some return checks to shut build
warnings but the last test is useless since the tested pointer is not
updated by the last call to utoa_pad() used to convert the milliseconds.
It turns out the original code from 2012 already skipped this part,
probably in order to avoid the risk of seeing a millisecond field not
belonging to the 0-999 range. Better keep the check and put the code
into stricter shape.
No backport is needed. This fixes issue #526.
return NULL;
*dst++ = '.';
- utoa_pad((unsigned int)(date->tv_usec/1000), dst, 4); // millisecondes
+ dst = utoa_pad((unsigned int)(date->tv_usec/1000)%1000, dst, 4); // milliseconds
if (!dst)
return NULL;
- dst += 3; // only the 3 first digits
*dst = '\0';
return dst;