From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 81050 invoked by alias); 2 Mar 2020 19:52:36 -0000 Mailing-List: contact cygwin-cvs-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: cygwin-cvs-owner@cygwin.com Received: (qmail 81009 invoked by uid 9078); 2 Mar 2020 19:52:36 -0000 Date: Mon, 02 Mar 2020 19:52:00 -0000 Message-ID: <20200302195236.81007.qmail@sourceware.org> Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Corinna Vinschen To: cygwin-cvs@sourceware.org Subject: [newlib-cygwin] Cygwin: console: convert wpbuf_put to inline function X-Act-Checkin: newlib-cygwin X-Git-Author: Corinna Vinschen X-Git-Refname: refs/heads/master X-Git-Oldrev: b4bc238311ca66ce34de5bec2f8219e881cedfd0 X-Git-Newrev: ecf27dd2e0ed1dff4dc919a7c805e951913d953f X-SW-Source: 2020-q1/txt/msg00101.txt https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=ecf27dd2e0ed1dff4dc919a7c805e951913d953f commit ecf27dd2e0ed1dff4dc919a7c805e951913d953f Author: Corinna Vinschen Date: Mon Mar 2 20:30:09 2020 +0100 Cygwin: console: convert wpbuf_put to inline function fix potential buffer overrun while at it Signed-off-by: Corinna Vinschen Diff: --- winsup/cygwin/fhandler_console.cc | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/winsup/cygwin/fhandler_console.cc b/winsup/cygwin/fhandler_console.cc index dffee24..c5f2691 100644 --- a/winsup/cygwin/fhandler_console.cc +++ b/winsup/cygwin/fhandler_console.cc @@ -63,10 +63,13 @@ static struct fhandler_base::rabuf_t con_ra; static unsigned char wpbuf[WPBUF_LEN]; static int wpixput; static unsigned char last_char; -#define wpbuf_put(x) \ - wpbuf[wpixput++] = x; \ - if (wpixput > WPBUF_LEN) \ - wpixput--; + +static inline void +wpbuf_put (unsigned char x) +{ + if (wpixput < WPBUF_LEN) + wpbuf[wpixput++] = x; +} static void beep ()