maintainer-feedback requested: [Bug 236093] ports-mgmt/pkg: possible error in function format_rate_SI (src/event.c)
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Wed Feb 27 22:25:37 UTC 2019
Bugzilla Automation <bugzilla at FreeBSD.org> has asked freebsd-pkg mailing list
<pkg at FreeBSD.org> for maintainer-feedback:
Bug 236093: ports-mgmt/pkg: possible error in function format_rate_SI
(src/event.c)
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=236093
--- Description ---
src/event.c:
87 /* units for format_size */
88 static const char *unit_SI[] = { " ", "k", "M", "G", "T", };
109 static void
110 format_rate_SI(char *buf, int size, off_t bytes)
111 {
112 int i;
113
114 bytes *= 100;
115 for (i = 0; bytes >= 100*1000 && unit_SI[i][0] != 'T'; i++)
116 bytes = (bytes + 500) / 1000;
117 if (i == 0) {
118 i++;
119 bytes = (bytes + 500) / 1000;
120 }
121 snprintf(buf, size, "%3lld.%1lld%s%s",
122 (long long) (bytes + 5) / 100,
123 (long long) (bytes + 5) / 10 % 10,
124 unit_SI[i],
125 i ? "B" : " ");
126 }
Unless I am mistaken, i can not be zero at lines 124-125. As a consequence:
• the first element of unit_SI is never used
• in the call to snprintf, the last argument is always "B", never " "
More information about the freebsd-pkg
mailing list