From 1b44f35d259622ebb837d9d00833502ac751df13 Mon Sep 17 00:00:00 2001 From: David Turner Date: Thu, 30 Apr 2020 02:12:59 +0200 Subject: [build] Fix compilation warnings Fix various compiler warnings when building the FreeType 2 demo programs: * graph/x11/grx11.c: Changed the return type of gr_x11_surface_listen_event() to match the expected type. * src/: Remove problematic uses of strncpy() and replace them with snprintf() which takes the size of the target buffer and remove un-needed uses of the alt_filename[] array. Reported as https://savannah.nongnu.org/bugs/?58275 --- graph/x11/grx11.c | 4 +++- src/compos.c | 17 +++++------------ src/ftchkwd.c | 16 ++++------------ src/ftdump.c | 16 ++++------------ src/ftlint.c | 17 +++++------------ src/ftmemchk.c | 17 +++++------------ src/ftsbit.c | 14 ++++---------- src/fttimer.c | 14 ++------------ src/fttry.c | 13 ++----------- 9 files changed, 34 insertions(+), 94 deletions(-) diff --git a/graph/x11/grx11.c b/graph/x11/grx11.c index c923e0a..9bca06b 100644 --- a/graph/x11/grx11.c +++ b/graph/x11/grx11.c @@ -1148,7 +1148,7 @@ typedef unsigned long uint32; } - static void + static int gr_x11_surface_listen_event( grX11Surface* surface, int event_mask, grEvent* grevent ) @@ -1237,6 +1237,8 @@ typedef unsigned long uint32; Set_Key: grevent->type = gr_key_down; grevent->key = grkey; + + return 1; } diff --git a/src/compos.c b/src/compos.c index 46ee2ae..a4cdd87 100644 --- a/src/compos.c +++ b/src/compos.c @@ -65,7 +65,6 @@ int i, file_index; unsigned int id; char filename[1024 + 4]; - char alt_filename[1024 + 4]; char* execname; char* fname; @@ -90,19 +89,13 @@ i--; } - filename[1024] = '\0'; - alt_filename[1024] = '\0'; - - strncpy( filename, fname, 1024 ); - strncpy( alt_filename, fname, 1024 ); - #ifndef macintosh - if ( i >= 0 ) - { - strncpy( filename + strlen( filename ), ".ttf", 4 ); - strncpy( alt_filename + strlen( alt_filename ), ".ttc", 4 ); - } + snprintf(filename, sizeof(filename), "%s%s", fname, + (i >= 0 ? ".ttf" : "")); +#else + snprintf(filename, sizeof(filename), "%s", fname); #endif + i = strlen( filename ); fname = filename; diff --git a/src/ftchkwd.c b/src/ftchkwd.c index 7673847..46194a0 100644 --- a/src/ftchkwd.c +++ b/src/ftchkwd.c @@ -119,7 +119,6 @@ int i, file_index; char filename[1024 + 4]; - char alt_filename[1024 + 4]; char* execname; char* fname; @@ -160,18 +159,11 @@ i--; } - filename[1024] = '\0'; - alt_filename[1024] = '\0'; - - strncpy( filename, fname, 1024 ); - strncpy( alt_filename, fname, 1024 ); - #ifndef macintosh - if ( i >= 0 ) - { - strncpy( filename + strlen( filename ), ".ttf", 4 ); - strncpy( alt_filename + strlen( alt_filename ), ".ttc", 4 ); - } + snprintf(filename, sizeof(filename), "%s%s", fname, + (i >= 0 ? ".ttf" : "")); +#else + snprintf(filename, sizeof(filename), "%s", fname); #endif /* Load face */ diff --git a/src/ftdump.c b/src/ftdump.c index 56c4672..9015d66 100644 --- a/src/ftdump.c +++ b/src/ftdump.c @@ -857,7 +857,6 @@ { int i, file; char filename[1024]; - char alt_filename[1024]; char* execname; int num_faces; int option; @@ -935,12 +934,6 @@ file = 0; - strncpy( filename, argv[file], 1019 ); - strncpy( alt_filename, argv[file], 1019 ); - - filename[1019] = '\0'; - alt_filename[1019] = '\0'; - /* try to load the file name as is, first */ error = FT_New_Face( library, argv[file], 0, &face ); if ( !error ) @@ -955,11 +948,10 @@ i--; } - if ( i >= 0 ) - { - strncpy( filename + strlen( filename ), ".ttf", 5 ); - strncpy( alt_filename + strlen( alt_filename ), ".ttc", 5 ); - } + snprintf(filename, sizeof(filename), "%s%s", argv[file], + (i >= 0 ? ".ttf" : "")); +#else + snprintf(filename, sizeof(filename), "%s", argv[file]); #endif /* Load face */ diff --git a/src/ftlint.c b/src/ftlint.c index 02bb4e6..cdb0473 100644 --- a/src/ftlint.c +++ b/src/ftlint.c @@ -63,7 +63,6 @@ int i, file_index; unsigned int id; char filename[1024]; - char alt_filename[1024]; char* execname; char* fname; @@ -110,19 +109,13 @@ i--; } - strncpy( filename, fname, 1019 ); - strncpy( alt_filename, fname, 1019 ); - - filename[1019] = '\0'; - alt_filename[1019] = '\0'; - #ifndef macintosh - if ( i >= 0 ) - { - strncpy( filename + strlen( filename ), ".ttf", 5 ); - strncpy( alt_filename + strlen( alt_filename ), ".ttc", 5 ); - } + snprintf(filename, sizeof(filename), "%s%s", fname, + (i >= 0) ? ".ttf" : ""); +#else + snprintf(filename, sizeof(filename), "%s", fname); #endif + i = (int)strlen( filename ); fname = filename; diff --git a/src/ftmemchk.c b/src/ftmemchk.c index 79621f8..f6fc91c 100644 --- a/src/ftmemchk.c +++ b/src/ftmemchk.c @@ -228,7 +228,6 @@ int main( int argc, char** argv ) int i, file_index; unsigned int id; char filename[1024 + 4]; - char alt_filename[1024 + 4]; char* execname; char* fname; @@ -261,19 +260,13 @@ int main( int argc, char** argv ) i--; } - filename[1024] = '\0'; - alt_filename[1024] = '\0'; - - strncpy( filename, fname, 1024 ); - strncpy( alt_filename, fname, 1024 ); - #ifndef macintosh - if ( i >= 0 ) - { - strncpy( filename + strlen( filename ), ".ttf", 4 ); - strncpy( alt_filename + strlen( alt_filename ), ".ttc", 4 ); - } + snprintf(filename, sizeof(filename), "%s%s", fname, + (i >= 0) ? ".ttf" : ""); +#else + snprintf(filename, sizeof(filename), "%s", fname); #endif + i = strlen( filename ); fname = filename; diff --git a/src/ftsbit.c b/src/ftsbit.c index 8404aff..06d2aac 100644 --- a/src/ftsbit.c +++ b/src/ftsbit.c @@ -195,17 +195,11 @@ i--; } - filename[1024] = '\0'; - alt_filename[1024] = '\0'; + snprintf(filename, sizeof(filename), "%s%s", fname, + (i >= 0) ? ".ttf" : ""); - strncpy( filename, fname, 1024 ); - strncpy( alt_filename, fname, 1024 ); - - if ( i >= 0 ) - { - strncpy( filename + strlen( filename ), ".ttf", 4 ); - strncpy( alt_filename + strlen( alt_filename ), ".ttc", 4 ); - } + snprintf(alt_filename, sizeof(alt_filename), "%s%s", fname, + (i >= 0) ? ".ttc" : ""); /* Load face */ error = FT_New_Resource( engine, filename, &resource ); diff --git a/src/fttimer.c b/src/fttimer.c index fc60360..9f6bf3f 100644 --- a/src/fttimer.c +++ b/src/fttimer.c @@ -163,7 +163,6 @@ { int i, total, base, rendered_glyphs; char filename[1024 + 4]; - char alt_filename[1024 + 4]; long t, t0, tz0; @@ -222,17 +221,8 @@ i--; } - filename[1024] = '\0'; - alt_filename[1024] = '\0'; - - strncpy( filename, argv[1], 1024 ); - strncpy( alt_filename, argv[1], 1024 ); - - if ( i >= 0 ) - { - strncpy( filename + strlen( filename ), ".ttf", 4 ); - strncpy( alt_filename + strlen( alt_filename ), ".ttc", 4 ); - } + snprintf(filename, sizeof(filename), "%s%s", argv[1], + (i >= 0) ? ".ttf" : ""); /* Initialize engine */ diff --git a/src/fttry.c b/src/fttry.c index dda9075..0048f34 100644 --- a/src/fttry.c +++ b/src/fttry.c @@ -67,7 +67,6 @@ { int i, file_index, glyph_index; char filename[1024 + 4]; - char alt_filename[1024 + 4]; char* execname; char* fname; int load_unscaled = 0; @@ -108,17 +107,9 @@ i--; } - filename[1024] = '\0'; - alt_filename[1024] = '\0'; + snprintf(filename, sizeof(filename), "%s%s", fname, + (i >= 0) ? ".ttf" : ""); - strncpy( filename, fname, 1024 ); - strncpy( alt_filename, fname, 1024 ); - - if ( i >= 0 ) - { - strncpy( filename + strlen( filename ), ".ttf", 4 ); - strncpy( alt_filename + strlen( alt_filename ), ".ttc", 4 ); - } i = strlen( filename ); fname = filename; -- 2.20.1