From 3665eecf473b8ea62dc26db2718952c4ddf6cdfc Mon Sep 17 00:00:00 2001 From: Frank Gevaerts Date: Sat, 20 Jul 2019 17:11:32 +0200 Subject: Increase set_time_screen() buffer size for hosted to keep the compiler happy. The format strings in the snprintf can in theory need 60 characters This will not happen in practice (because seconds are 0..60 and not full-range integers etc.), but -D_FORTIFY_SOURCE will still warn about it, so we use 60 characters for HOSTED to make the compiler happy. Native builds still use 20, which is enough in practice. Change-Id: I22a2bab8134442e531a10bf883f3a369ade0fdc3 --- apps/screens.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'apps') diff --git a/apps/screens.c b/apps/screens.c index db83a9837d..9cb5ebe258 100644 --- a/apps/screens.c +++ b/apps/screens.c @@ -374,7 +374,16 @@ bool set_time_screen(const char* title, struct tm *tm) int button; unsigned int i, realyear, min, max; unsigned char *ptr[6]; +#if (CONFIG_PLATFORM & PLATFORM_HOSTED) + /* The format strings in the snprintf can in theory need 60 characters + This will not happen in practice (because seconds are 0..60 and not + full-range integers etc.), but -D_FORTIFY_SOURCE will still warn + about it, so we use 60 characters for HOSTED to make the compiler + happy. Native builds still use 20, which is enough in practice. */ + unsigned char buffer[60]; +#else unsigned char buffer[20]; +#endif int *valptr = NULL; static unsigned char daysinmonth[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; -- cgit v1.2.3