Re: svn commit: r336028 - head/usr.bin/top
In message , =?utf-8?B?5b6M6Je k5aSn5Zyw?= writes: > > > 2018/07/07 8:53ãHiroki Sato ã®ã¡ã¼ã«: > > > > Daichi GOTO wrote > > in <201807061207.w66c76cr043...@repo.freebsd.org>: > > > > da> Author: daichi > > da> Date: Fri Jul 6 12:07:06 2018 > > da> New Revision: 336028 > > da> URL: https://svnweb.freebsd.org/changeset/base/336028 > > da> > > da> Log: > > da> Changed to eliminate the upper limit of command length displayed > > da> by "-a" and expand to match terminal width > > da> > > da> Reviewed by: eadler > > da> Approved by: gnn (mentor) > > da> Differential Revision:https://reviews.freebsd.org/D16083 > > da> > > da> Modified: > > da> head/usr.bin/top/display.c > > da> head/usr.bin/top/machine.c > > da> head/usr.bin/top/screen.c > > da> head/usr.bin/top/top.h > > > > This change breaks displaying a prompt and messages in the > > interactive mode by new_message() when typing "o" or "p", for > > example. While r336031 fixed a warning in GCC, it does not fix the > > problem itself. Please fix it. > > OK. I will fix this problem first. This should circumvent the problem until you find a more permanent fix. Index: /opt/src/svn-current/usr.bin/top/display.c === --- /opt/src/svn-current/usr.bin/top/display.c (revision 336075) +++ /opt/src/svn-current/usr.bin/top/display.c (working copy) @@ -960,7 +960,7 @@ va_start(args, msgfmt); /* first, format the message */ -vsnprintf(next_msg, strlen(next_msg), msgfmt, args); +vsnprintf(next_msg, screen_width + 5, msgfmt, args); va_end(args); > > > > I also think restructure of the buffer management is required first > > if we want to eliminate the column width limitation. Using sbuf(9) > > consistently may be better than incomplete conversion from static > > arrays to malloc(). > > I understand. Switching to sbuf(9) is the next step. > > > > > -- Hiroki > > > -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. ___ 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"
Re: svn commit: r336028 - head/usr.bin/top
> 2018/07/07 8:53、Hiroki Sato のメール: > > Daichi GOTO wrote > in <201807061207.w66c76cr043...@repo.freebsd.org>: > > da> Author: daichi > da> Date: Fri Jul 6 12:07:06 2018 > da> New Revision: 336028 > da> URL: https://svnweb.freebsd.org/changeset/base/336028 > da> > da> Log: > da> Changed to eliminate the upper limit of command length displayed > da> by "-a" and expand to match terminal width > da> > da> Reviewed by:eadler > da> Approved by:gnn (mentor) > da> Differential Revision: https://reviews.freebsd.org/D16083 > da> > da> Modified: > da> head/usr.bin/top/display.c > da> head/usr.bin/top/machine.c > da> head/usr.bin/top/screen.c > da> head/usr.bin/top/top.h > > This change breaks displaying a prompt and messages in the > interactive mode by new_message() when typing "o" or "p", for > example. While r336031 fixed a warning in GCC, it does not fix the > problem itself. Please fix it. OK. I will fix this problem first. > I also think restructure of the buffer management is required first > if we want to eliminate the column width limitation. Using sbuf(9) > consistently may be better than incomplete conversion from static > arrays to malloc(). I understand. Switching to sbuf(9) is the next step. > > -- Hiroki ___ 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"
Re: svn commit: r336028 - head/usr.bin/top
Daichi GOTO wrote in <201807061207.w66c76cr043...@repo.freebsd.org>: da> Author: daichi da> Date: Fri Jul 6 12:07:06 2018 da> New Revision: 336028 da> URL: https://svnweb.freebsd.org/changeset/base/336028 da> da> Log: da> Changed to eliminate the upper limit of command length displayed da> by "-a" and expand to match terminal width da> da> Reviewed by: eadler da> Approved by: gnn (mentor) da> Differential Revision:https://reviews.freebsd.org/D16083 da> da> Modified: da> head/usr.bin/top/display.c da> head/usr.bin/top/machine.c da> head/usr.bin/top/screen.c da> head/usr.bin/top/top.h This change breaks displaying a prompt and messages in the interactive mode by new_message() when typing "o" or "p", for example. While r336031 fixed a warning in GCC, it does not fix the problem itself. Please fix it. I also think restructure of the buffer management is required first if we want to eliminate the column width limitation. Using sbuf(9) consistently may be better than incomplete conversion from static arrays to malloc(). -- Hiroki pgpwYfF61gB5W.pgp Description: PGP signature
Re: svn commit: r336028 - head/usr.bin/top
Surely. I think your advice is appropriate. Could you please commit? > 2018/07/06 22:04、Sean Bruno のメール: > > > > On 07/06/18 06:07, Daichi GOTO wrote: >> -static char next_msg[MAX_COLS + 5]; >> +static char *next_msg = NULL; >> static int msglen = 0; >> /* Invariant: msglen is always the length of the message currently displayed >>on the screen (even when next_msg doesn't contain that message). */ > > gcc noticed that a later call to vsnprintf() now has some problems. > /home/sbruno/bsd/wifi/fbsd_head/usr.bin/top/display.c: In function > 'new_message': > /home/sbruno/bsd/wifi/fbsd_head/usr.bin/top/display.c:963:31: error: > argument to 'sizeof' in 'vsnprintf' call is the same expression as the > destination; did you mean to provide an explicit length? > [-Werror=sizeof-pointer-memaccess] > vsnprintf(next_msg, sizeof(next_msg), msgfmt, args); > > > I think this needs to be changed > > Index: usr.bin/top/display.c > === > --- usr.bin/top/display.c (revision 336029) > +++ usr.bin/top/display.c (working copy) > @@ -960,7 +960,7 @@ > va_start(args, msgfmt); > > /* first, format the message */ > -vsnprintf(next_msg, sizeof(next_msg), msgfmt, args); > +vsnprintf(next_msg, strlen(next_msg), msgfmt, args); > > va_end(args); > ___ 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"
Re: svn commit: r336028 - head/usr.bin/top
On 07/06/18 06:07, Daichi GOTO wrote: > -static char next_msg[MAX_COLS + 5]; > +static char *next_msg = NULL; > static int msglen = 0; > /* Invariant: msglen is always the length of the message currently displayed > on the screen (even when next_msg doesn't contain that message). */ gcc noticed that a later call to vsnprintf() now has some problems. /home/sbruno/bsd/wifi/fbsd_head/usr.bin/top/display.c: In function 'new_message': /home/sbruno/bsd/wifi/fbsd_head/usr.bin/top/display.c:963:31: error: argument to 'sizeof' in 'vsnprintf' call is the same expression as the destination; did you mean to provide an explicit length? [-Werror=sizeof-pointer-memaccess] vsnprintf(next_msg, sizeof(next_msg), msgfmt, args); I think this needs to be changed Index: usr.bin/top/display.c === --- usr.bin/top/display.c (revision 336029) +++ usr.bin/top/display.c (working copy) @@ -960,7 +960,7 @@ va_start(args, msgfmt); /* first, format the message */ -vsnprintf(next_msg, sizeof(next_msg), msgfmt, args); +vsnprintf(next_msg, strlen(next_msg), msgfmt, args); va_end(args); signature.asc Description: OpenPGP digital signature