On Mon, May 16, 2016 at 10:05 PM, Don Lewis <truck...@freebsd.org> wrote: > Author: truckman > Date: Tue May 17 05:05:30 2016 > New Revision: 300005 > URL: https://svnweb.freebsd.org/changeset/base/300005 > > Log: > swprintf() and apparently wcsftime() want the their output buffer size > specified in terms of the the number of wide characters and not > sizeof(buffer). > ... > Modified: head/usr.bin/ncal/ncal.c > ============================================================================== > --- head/usr.bin/ncal/ncal.c Tue May 17 04:53:21 2016 (r300004) > +++ head/usr.bin/ncal/ncal.c Tue May 17 05:05:30 2016 (r300005) > @@ -642,8 +642,8 @@ monthrangeb(int y, int m, int jd_flag, i > wprintf(L"%-*ls ", > mw, wcenter(ws, year[i].name, mw)); > else { > - swprintf(ws, sizeof(ws), L"%-ls %d", > - year[i].name, M2Y(m + i)); > + swprintf(ws, sizeof(ws)/sizeof(ws[0]),
Normally we spell this nitems(ws). > + L"%-ls %d", year[i].name, M2Y(m + i)); > wprintf(L"%-*ls ", mw, wcenter(ws1, ws, mw)); > } > printf("\n"); > @@ -958,7 +958,7 @@ mkweekdays(struct weekdays *wds) > > for (i = 0; i != 7; i++) { > tm.tm_wday = (i+1) % 7; > - wcsftime(buf, sizeof(buf), L"%a", &tm); > + wcsftime(buf, sizeof(buf)/sizeof(buf[0]), L"%a", &tm); This one can be nitems(buf) too. > for (len = 2; len > 0; --len) { > if ((width = wcswidth(buf, len)) <= 2) > break; > Best, Conrad _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"