Red Hat Bugzilla – Bug 1001645
harfbuzz: misuse of snprintf return value
Last modified: 2014-06-18 04:28:12 EDT
src/hb-buffer-serializer.cc:_hb_buffer_serialize_glyphs_json() misuses return value from snprintf(). Same for _hb_buffer_serialize_glyphs_text() and hbsrc/hb-shape.cc:_feature_to_string(). These cases are likely harmless because they do not happen inside a loop which could actually overflow the buffer.
In all three cases it's guaranteed that they don't overflow the buffer. I'm still not sure how this is "misuse". As such, I'm not sure what there is to fix.
Ok, I now understand what you mean by misuse. But I think the code is fine the way it is.
What I meant: snprintf can return -1 on error (glibc calls malloc in some cases which could fail; the Harfbuzz code doesn't deal with that), and if the buffer is too small, it returns the non-truncated number of characters, not the length of the truncated string.
Pushed out a fix for the negative return. Thanks.
Thanks behdad for quick fix. I have built harfbuzz-0.9.20-1.el7 now.
I am going to file errata as errata is needed for each package against whom bug is available and fixed.
I suppose when Akira gave devel-ack+, bugbot should have changed bug status from ON_QA to MODIFIED.
This request was resolved in Red Hat Enterprise Linux 7.0.
Contact your manager or support representative in case you have further questions about the request.