Module: wine Branch: master Commit: 30913ff564191d86d2d1d7ee5de359054fd30fff URL: https://source.winehq.org/git/wine.git/?a=commit;h=30913ff564191d86d2d1d7ee5...
Author: Piotr Caban piotr@codeweavers.com Date: Mon Sep 30 16:52:07 2019 +0200
msvcrt: Don't write past buffer in strftime.
Signed-off-by: Piotr Caban piotr@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/msvcrt/time.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/dlls/msvcrt/time.c b/dlls/msvcrt/time.c index b7d11e0543..4aaa89ac0e 100644 --- a/dlls/msvcrt/time.c +++ b/dlls/msvcrt/time.c @@ -1197,10 +1197,12 @@ static MSVCRT_size_t strftime_helper(char *str, MSVCRT_size_t max, const char *f case 'T': if(!strftime_int(str, &ret, max, mstm->tm_hour, alternate ? 0 : 2, 0, 23)) return 0; - str[ret++] = ':'; + if(ret < max) + str[ret++] = ':'; if(!strftime_int(str, &ret, max, mstm->tm_min, alternate ? 0 : 2, 0, 59)) return 0; - str[ret++] = ':'; + if(ret < max) + str[ret++] = ':'; if(!strftime_int(str, &ret, max, mstm->tm_sec, alternate ? 0 : 2, 0, 59)) return 0; break;