From 15bd816ea576554beefe5b1d495e0ec2810a7d5b Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Thu, 4 Jul 2019 23:55:56 +0200 Subject: [PATCH] mingw: fix possible buffer overrun when calling `GetUserNameW()` In 39a98e9b68b8 (mingw: get pw_name in UTF-8 format, 2019-06-27), this developer missed the fact that the `GetUserNameW()` function takes the number of characters as `len` parameter, not the number of bytes. Reported-by: Beat Bolli Signed-off-by: Johannes Schindelin --- compat/mingw.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compat/mingw.c b/compat/mingw.c index b8a62bf9147092..a0eb695653ef35 100644 --- a/compat/mingw.c +++ b/compat/mingw.c @@ -1952,7 +1952,7 @@ struct passwd *getpwuid(int uid) if (initialized) return p; - len = sizeof(buf); + len = ARRAY_SIZE(buf); if (!GetUserNameW(buf, &len)) { initialized = 1; return NULL;