[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[freetype2-demos] master 9ec6f0a 1/6: * src/*: Replace simple usage of `
From: |
Werner LEMBERG |
Subject: |
[freetype2-demos] master 9ec6f0a 1/6: * src/*: Replace simple usage of `sprintf' with `snprintf'. |
Date: |
Fri, 24 Jul 2020 10:16:49 -0400 (EDT) |
branch: master
commit 9ec6f0acae530fab5e0e792f65fd06fc0513a9b9
Author: David Turner <david@freetype.org>
Commit: Werner Lemberg <wl@gnu.org>
* src/*: Replace simple usage of `sprintf' with `snprintf'.
Recent gcc compiler versions produce warnings for potentially unsafe
functions like `sprintf'.
---
ChangeLog | 7 +++++
src/ftbench.c | 32 ++++++++++-----------
src/ftdiff.c | 73 ++++++++++++++++++++++++------------------------
src/ftdump.c | 4 +--
src/ftgamma.c | 4 +--
src/ftgrid.c | 49 ++++++++++++++++++--------------
src/ftmulti.c | 13 +++++----
src/ftsbit.c | 2 +-
src/ftstring.c | 9 +++---
src/ftview.c | 88 +++++++++++++++++++++++++++++-----------------------------
src/ttdebug.c | 16 ++++++-----
11 files changed, 159 insertions(+), 138 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index e225105..d67c1a3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2020-07-24 David Turner <david@freetype.org>
+
+ * src/*: Replace simple usage of `sprintf' with `snprintf'.
+
+ Recent gcc compiler versions produce warnings for potentially unsafe
+ functions like `sprintf'.
+
2020-07-06 Werner Lemberg <wl@gnu.org>
Synchronize with recent FreeType changes.
diff --git a/src/ftbench.c b/src/ftbench.c
index 58a7741..313f351 100644
--- a/src/ftbench.c
+++ b/src/ftbench.c
@@ -835,27 +835,27 @@
/* we expect that at least one interpreter version is available */
if ( num_tt_interpreter_versions == 2 )
- sprintf(interpreter_versions,
- "%d and %d",
- tt_interpreter_versions[0],
- tt_interpreter_versions[1] );
+ snprintf( interpreter_versions, sizeof ( interpreter_versions ),
+ "%d and %d",
+ tt_interpreter_versions[0],
+ tt_interpreter_versions[1] );
else
- sprintf(interpreter_versions,
- "%d, %d, and %d",
- tt_interpreter_versions[0],
- tt_interpreter_versions[1],
- tt_interpreter_versions[2] );
+ snprintf( interpreter_versions, sizeof ( interpreter_versions ),
+ "%d, %d, and %d",
+ tt_interpreter_versions[0],
+ tt_interpreter_versions[1],
+ tt_interpreter_versions[2] );
/* we expect that at least one hinting engine is available */
if ( num_ps_hinting_engines == 1 )
- sprintf(hinting_engines,
- "`%s'",
- ps_hinting_engine_names[ps_hinting_engines[0]] );
+ snprintf( hinting_engines, sizeof ( hinting_engines ),
+ "`%s'",
+ ps_hinting_engine_names[ps_hinting_engines[0]] );
else
- sprintf(hinting_engines,
- "`%s' and `%s'",
- ps_hinting_engine_names[ps_hinting_engines[0]],
- ps_hinting_engine_names[ps_hinting_engines[1]] );
+ snprintf( hinting_engines, sizeof ( hinting_engines ),
+ "`%s' and `%s'",
+ ps_hinting_engine_names[ps_hinting_engines[0]],
+ ps_hinting_engine_names[ps_hinting_engines[1]] );
fprintf( stderr,
diff --git a/src/ftdiff.c b/src/ftdiff.c
index 69ae197..59c68fe 100644
--- a/src/ftdiff.c
+++ b/src/ftdiff.c
@@ -876,8 +876,8 @@
else if ( rmode == HINT_MODE_AUTOHINT )
extra = warping ? " (+warp)" : " (-warp)";
- sprintf( temp, "%s%s",
- render_mode_names[column->hint_mode], extra );
+ snprintf( temp, sizeof ( temp ), "%s%s",
+ render_mode_names[column->hint_mode], extra );
state->display.disp_text( disp, left,
bottom + 5, temp );
@@ -896,19 +896,19 @@
unsigned char* fw = column->filter_weights;
- sprintf( temp,
- "%s0x%02X%s0x%02X%s0x%02X%s0x%02X%s0x%02X%s",
- fwi == 0 ? "[" : " ",
- fw[0],
- fwi == 0 ? "]" : ( fwi == 1 ? "[" : " " ),
- fw[1],
- fwi == 1 ? "]" : ( fwi == 2 ? "[" : " " ),
- fw[2],
- fwi == 2 ? "]" : ( fwi == 3 ? "[" : " " ),
- fw[3],
- fwi == 3 ? "]" : ( fwi == 4 ? "[" : " " ),
- fw[4],
- fwi == 4 ? "]" : " " );
+ snprintf( temp, sizeof ( temp ),
+ "%s0x%02X%s0x%02X%s0x%02X%s0x%02X%s0x%02X%s",
+ fwi == 0 ? "[" : " ",
+ fw[0],
+ fwi == 0 ? "]" : ( fwi == 1 ? "[" : " " ),
+ fw[1],
+ fwi == 1 ? "]" : ( fwi == 2 ? "[" : " " ),
+ fw[2],
+ fwi == 2 ? "]" : ( fwi == 3 ? "[" : " " ),
+ fw[3],
+ fwi == 3 ? "]" : ( fwi == 4 ? "[" : " " ),
+ fw[4],
+ fwi == 4 ? "]" : " " );
state->display.disp_text( disp, left,
bottom + 2 * HEADER_HEIGHT + 5, temp );
}
@@ -939,13 +939,13 @@
bottom + 2 * HEADER_HEIGHT + 5, msg );
}
- sprintf( temp, "%s %s %s",
- column->use_kerning ? "+kern"
- : "-kern",
- column->use_deltas ? "+delta"
- : "-delta",
- column->use_cboxes ? "glyph boxes"
- : "adv. widths" );
+ snprintf( temp, sizeof ( temp ), "%s %s %s",
+ column->use_kerning ? "+kern"
+ : "-kern",
+ column->use_deltas ? "+delta"
+ : "-delta",
+ column->use_cboxes ? "glyph boxes"
+ : "adv. widths" );
state->display.disp_text( disp, left,
bottom + 3 * HEADER_HEIGHT + 5, temp );
@@ -1143,7 +1143,7 @@
FT_Library_Version( state->library, &major, &minor, &patch );
format = patch ? "%d.%d.%d" : "%d.%d";
- sprintf( version, format, major, minor, patch );
+ snprintf( version, sizeof ( version ), format, major, minor, patch );
adisplay_clear( display );
grSetLineHeight( 10 );
@@ -1151,9 +1151,10 @@
grSetMargin( 2, 1 );
grGotobitmap( display->bitmap );
- sprintf( buf,
- "FreeType Hinting Mode Comparator - part of the FreeType %s test
suite",
- version );
+ snprintf( buf, sizeof ( buf ),
+ "FreeType Hinting Mode Comparator -"
+ " part of the FreeType %s test suite",
+ version );
grWriteln( buf );
grLn();
@@ -1479,20 +1480,20 @@
basename = ft_basename( state->filename );
- sprintf( buf, "%.50s %.50s (file `%.100s')",
- face->family_name,
- face->style_name,
- basename );
+ snprintf( buf, sizeof ( buf ), "%.50s %.50s (file `%.100s')",
+ face->family_name,
+ face->style_name,
+ basename );
grWriteCellString( adisplay->bitmap, 0, 5,
buf, adisplay->fore_color );
if ( adisplay->gamma != 0.0 )
- sprintf( gamma, "%.1f", adisplay->gamma );
- sprintf( buf, "%.1fpt (%dppem) at %ddpi, gamma: %s",
- state->char_size,
- (int)(state->char_size * state->resolution / 72 + 0.5),
- state->resolution,
- gamma );
+ snprintf( gamma, sizeof ( gamma ), "%.1f", adisplay->gamma );
+ snprintf( buf, sizeof ( buf ), "%.1fpt (%dppem) at %ddpi, gamma: %s",
+ state->char_size,
+ (int)( state->char_size * state->resolution / 72 + 0.5 ),
+ state->resolution,
+ gamma );
grWriteCellString( adisplay->bitmap, 0, 5 + HEADER_HEIGHT,
buf, adisplay->fore_color );
diff --git a/src/ftdump.c b/src/ftdump.c
index b87955b..00ddd3c 100644
--- a/src/ftdump.c
+++ b/src/ftdump.c
@@ -118,7 +118,7 @@
if ( left <= 0 )
left = 1;
- sprintf( result, " %s:%*s", name, left, " " );
+ snprintf( result, sizeof ( result ), " %s:%*s", name, left, " " );
return result;
}
@@ -865,7 +865,7 @@
continue;
}
- sprintf( tag, "%04hx", i );
+ snprintf( tag, sizeof ( tag ), "%04hx", i );
printf( "\nglyf program %hd (%.4s)", i, tag );
Print_Bytecode( buffer + loc, len, tag );
diff --git a/src/ftgamma.c b/src/ftgamma.c
index 8392e32..de75687 100644
--- a/src/ftgamma.c
+++ b/src/ftgamma.c
@@ -241,7 +241,7 @@
int nx;
- sprintf( temp, "%.1f", ggamma );
+ snprintf( temp, sizeof ( temp ), "%.1f", ggamma );
grWriteCellString( display->bitmap, x_0 - 32, y + ( yside - 6 ) / 2,
temp, display->fore_color );
@@ -420,7 +420,7 @@
for ( i = 0; i <= 10; i++ )
{
- sprintf( buf, "%.1f", 1. + .2 * i );
+ snprintf( buf, sizeof ( buf ), "%.1f", 1. + .2 * i );
grWriteCellString( display->bitmap, x - 311 + i * 60, y + 155,
buf, display->fore_color );
}
diff --git a/src/ftgrid.c b/src/ftgrid.c
index 3313e79..455f295 100644
--- a/src/ftgrid.c
+++ b/src/ftgrid.c
@@ -887,9 +887,10 @@
grSetMargin( 2, 1 );
grGotobitmap( display->bitmap );
- sprintf( buf,
- "FreeType Glyph Grid Viewer - part of the FreeType %s test suite",
- version );
+ snprintf( buf, sizeof ( buf ),
+ "FreeType Glyph Grid Viewer -"
+ " part of the FreeType %s test suite",
+ version );
grWriteln( buf );
grLn();
@@ -1114,10 +1115,10 @@
event_font_change( 0 );
}
- sprintf( status.header_buffer,
- "TrueType engine changed to version %d",
- status.tt_interpreter_versions[
- status.tt_interpreter_version_idx]);
+ snprintf( status.header_buffer, sizeof ( status.header_buffer ),
+ "TrueType engine changed to version %d",
+ status.tt_interpreter_versions[
+ status.tt_interpreter_version_idx] );
status.header = (const char *)status.header_buffer;
}
@@ -1185,7 +1186,8 @@
if ( status.scale == scale_old && zoom > 1.0 )
status.scale++;
- sprintf( status.header_buffer, "zoom scale %d:1", status.scale );
+ snprintf( status.header_buffer, sizeof ( status.header_buffer ),
+ "zoom scale %d:1", status.scale );
status.header = (const char *)status.header_buffer;
}
@@ -1235,8 +1237,9 @@
event_font_change( 0 );
}
- sprintf( status.header_buffer, "rendering mode changed to %s",
- lcd_mode );
+ snprintf( status.header_buffer, sizeof ( status.header_buffer ),
+ "rendering mode changed to %s",
+ lcd_mode );
status.header = (const char *)status.header_buffer;
@@ -1286,8 +1289,9 @@
break;
}
- sprintf( status.header_buffer, "LCD filter changed to %s",
- lcd_filter );
+ snprintf( status.header_buffer, sizeof ( status.header_buffer ),
+ "LCD filter changed to %s",
+ lcd_filter );
status.header = (const char *)status.header_buffer;
@@ -1548,9 +1552,10 @@
event_font_change( 0 );
}
- sprintf( status.header_buffer, "CFF engine changed to %s",
- status.cff_hinting_engine == FT_HINTING_FREETYPE
- ? "FreeType" : "Adobe" );
+ snprintf( status.header_buffer, sizeof ( status.header_buffer ),
+ "CFF engine changed to %s",
+ status.cff_hinting_engine == FT_HINTING_FREETYPE
+ ? "FreeType" : "Adobe" );
status.header = (const char *)status.header_buffer;
}
@@ -1568,9 +1573,10 @@
event_font_change( 0 );
}
- sprintf( status.header_buffer, "Type 1 engine changed to %s",
- status.type1_hinting_engine == FT_HINTING_FREETYPE
- ? "FreeType" : "Adobe" );
+ snprintf( status.header_buffer, sizeof ( status.header_buffer ),
+ "Type 1 engine changed to %s",
+ status.type1_hinting_engine == FT_HINTING_FREETYPE
+ ? "FreeType" : "Adobe" );
status.header = (const char *)status.header_buffer;
}
@@ -1588,9 +1594,10 @@
event_font_change( 0 );
}
- sprintf( status.header_buffer, "CID engine changed to %s",
- status.t1cid_hinting_engine == FT_HINTING_FREETYPE
- ? "FreeType" : "Adobe" );
+ snprintf( status.header_buffer, sizeof ( status.header_buffer ),
+ "CID engine changed to %s",
+ status.t1cid_hinting_engine == FT_HINTING_FREETYPE
+ ? "FreeType" : "Adobe" );
status.header = (const char *)status.header_buffer;
}
diff --git a/src/ftmulti.c b/src/ftmulti.c
index 1562645..5a3cf38 100644
--- a/src/ftmulti.c
+++ b/src/ftmulti.c
@@ -525,9 +525,11 @@
FT_Library_Version( library, &major, &minor, &patch );
if ( patch )
- sprintf( version, "%d.%d.%d", major, minor, patch );
+ snprintf( version, sizeof ( version ),
+ "%d.%d.%d", major, minor, patch );
else
- sprintf( version, "%d.%d", major, minor );
+ snprintf( version, sizeof ( version ),
+ "%d.%d", major, minor );
Clear_Display();
grSetLineHeight( 10 );
@@ -535,9 +537,10 @@
grSetMargin( 2, 1 );
grGotobitmap( bit );
- sprintf( buf,
- "FreeType MM Glyph Viewer - part of the FreeType %s test suite",
- version );
+ snprintf( buf, sizeof ( buf ),
+ "FreeType MM Glyph Viewer -"
+ " part of the FreeType %s test suite",
+ version );
grWriteln( buf );
grLn();
diff --git a/src/ftsbit.c b/src/ftsbit.c
index 0f71ca5..9ce885d 100644
--- a/src/ftsbit.c
+++ b/src/ftsbit.c
@@ -40,7 +40,7 @@
{
static char temp[32];
- sprintf( temp, "0x%04lx", error );
+ snprintf( temp, sizeof ( temp ), "0x%04lx", error );
return temp;
}
diff --git a/src/ftstring.c b/src/ftstring.c
index 9e42e67..65d495d 100644
--- a/src/ftstring.c
+++ b/src/ftstring.c
@@ -249,9 +249,9 @@
grSetMargin( 2, 1 );
grGotobitmap( display->bitmap );
- sprintf( buf,
- "FreeType String Viewer - part of the FreeType %s test suite",
- version );
+ snprintf( buf, sizeof ( buf ),
+ "FreeType String Viewer - part of the FreeType %s test suite",
+ version );
grWriteln( buf );
grLn();
@@ -402,7 +402,8 @@
lcd_mode = " monochrome";
}
- sprintf( status.header_buffer, "mode changed to %s", lcd_mode );
+ snprintf( status.header_buffer, sizeof ( status.header_buffer ),
+ "mode changed to %s", lcd_mode );
status.header = status.header_buffer;
}
diff --git a/src/ftview.c b/src/ftview.c
index 0d5e249..d794650 100644
--- a/src/ftview.c
+++ b/src/ftview.c
@@ -806,9 +806,9 @@
grSetMargin( 2, 1 );
grGotobitmap( display->bitmap );
- sprintf( buf,
- "FreeType Glyph Viewer - part of the FreeType %s test suite",
- version );
+ snprintf( buf, sizeof ( buf ),
+ "FreeType Glyph Viewer - part of the FreeType %s test suite",
+ version );
grWriteln( buf );
grLn();
@@ -1525,9 +1525,9 @@
render_mode = "waterfall";
break;
}
- sprintf( buf, "%d: %s",
- status.render_mode + 1,
- render_mode );
+ snprintf( buf, sizeof ( buf ), "%d: %s",
+ status.render_mode + 1,
+ render_mode );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
}
@@ -1535,20 +1535,20 @@
if ( status.render_mode == RENDER_MODE_FANCY )
{
/* x emboldening */
- sprintf( buf, " x: % .3f",
- status.xbold_factor );
+ snprintf( buf, sizeof ( buf ), " x: % .3f",
+ status.xbold_factor );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
/* y emboldening */
- sprintf( buf, " y: % .3f",
- status.ybold_factor );
+ snprintf( buf, sizeof ( buf ), " y: % .3f",
+ status.ybold_factor );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
/* slanting */
- sprintf( buf, " s: % .3f",
- status.slant );
+ snprintf( buf, sizeof ( buf ), " s: % .3f",
+ status.slant );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
}
@@ -1556,8 +1556,8 @@
if ( status.render_mode == RENDER_MODE_STROKE )
{
/* stroking radius */
- sprintf( buf, " radius: %.3f",
- status.radius );
+ snprintf( buf, sizeof ( buf ), " radius: %.3f",
+ status.radius );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
}
@@ -1598,17 +1598,17 @@
}
/* hinting */
- sprintf( buf, "hinting: %s",
- handle->hinted ? "on" : "off" );
+ snprintf( buf, sizeof ( buf ), "hinting: %s",
+ handle->hinted ? "on" : "off" );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
if ( handle->hinted )
{
/* auto-hinting */
- sprintf( buf, " forced auto: %s",
- ( handle->autohint ||
- handle->lcd_mode == LCD_MODE_LIGHT ) ? "on" : "off" );
+ snprintf( buf, sizeof( buf ), " forced auto: %s",
+ ( handle->autohint ||
+ handle->lcd_mode == LCD_MODE_LIGHT ) ? "on" : "off" );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
}
@@ -1681,8 +1681,8 @@
if ( hinting_engine )
{
- sprintf( buf, "engine: %s",
- hinting_engine );
+ snprintf( buf, sizeof ( buf ), "engine: %s",
+ hinting_engine );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
}
@@ -1690,8 +1690,8 @@
if ( handle->lcd_mode == LCD_MODE_AA && handle->autohint )
{
- sprintf( buf, "warping: %s",
- status.warping ? "on" : "off" );
+ snprintf( buf, sizeof ( buf ), "warping: %s",
+ status.warping ? "on" : "off" );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
}
@@ -1699,39 +1699,39 @@
line++;
/* embedded bitmaps */
- sprintf( buf, "bitmaps: %s",
- handle->use_sbits ? "on" : "off" );
+ snprintf( buf, sizeof ( buf ), "bitmaps: %s",
+ handle->use_sbits ? "on" : "off" );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
if ( FT_HAS_COLOR( face ) )
{
- sprintf( buf, "color:" );
+ snprintf( buf, sizeof ( buf ), "color:" );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
/* color bitmaps */
- sprintf( buf, " bitmaps: %s",
- handle->use_color ? "on" : "off" );
+ snprintf( buf, sizeof ( buf ), " bitmaps: %s",
+ handle->use_color ? "on" : "off" );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
/* color-layered glyphs */
- sprintf( buf, " outlines: %s",
- handle->use_layers ? "on" : "off" );
+ snprintf( buf, sizeof ( buf ), " outlines: %s",
+ handle->use_layers ? "on" : "off" );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
/* color palette */
- sprintf( buf, " palette idx: %d",
- handle->current_font->palette_index );
+ snprintf( buf, sizeof ( buf ), " palette idx: %d",
+ handle->current_font->palette_index );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
}
/* cache */
- sprintf( buf, "cache: %s",
- handle->use_sbits_cache ? "on" : "off" );
+ snprintf( buf, sizeof ( buf ), "cache: %s",
+ handle->use_sbits_cache ? "on" : "off" );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
@@ -1742,11 +1742,11 @@
FT_Err_Unimplemented_Feature &&
handle->lcd_mode >= LCD_MODE_RGB )
{
- sprintf( buf, "filter: %s",
- status.lcd_filter == 0 ? "none" :
- status.lcd_filter == 1 ? "default" :
- status.lcd_filter == 2 ? "light" :
- status.lcd_filter == 3 ? "legacy" : "custom" );
+ snprintf( buf, sizeof ( buf ), "filter: %s",
+ status.lcd_filter == 0 ? "none" :
+ status.lcd_filter == 1 ? "default" :
+ status.lcd_filter == 2 ? "light" :
+ status.lcd_filter == 3 ? "legacy" : "custom" );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
@@ -1760,11 +1760,11 @@
for ( i = 0; i < 5; i++ )
{
- sprintf( buf,
- " %s0x%02X%s",
- fwi == i ? "[" : " ",
- fw[i],
- fwi == i ? "]" : " " );
+ snprintf( buf, sizeof ( buf ),
+ " %s0x%02X%s",
+ fwi == i ? "[" : " ",
+ fw[i],
+ fwi == i ? "]" : " " );
grWriteCellString( display->bitmap, 0, (line++) * HEADER_HEIGHT,
buf, display->fore_color );
}
diff --git a/src/ttdebug.c b/src/ttdebug.c
index 7af1bfe..e73338b 100644
--- a/src/ttdebug.c
+++ b/src/ttdebug.c
@@ -2817,14 +2817,16 @@
/* we expect that at least one interpreter version is available */
if ( num_tt_interpreter_versions == 2 )
- sprintf(versions, "%d and %d",
- tt_interpreter_versions[0],
- tt_interpreter_versions[1] );
+ snprintf( versions, sizeof ( versions ),
+ "%d and %d",
+ tt_interpreter_versions[0],
+ tt_interpreter_versions[1] );
else
- sprintf(versions, "%d, %d, and %d",
- tt_interpreter_versions[0],
- tt_interpreter_versions[1],
- tt_interpreter_versions[2] );
+ snprintf( versions, sizeof ( versions ),
+ "%d, %d, and %d",
+ tt_interpreter_versions[0],
+ tt_interpreter_versions[1],
+ tt_interpreter_versions[2] );
fprintf( stderr,
"\n"
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [freetype2-demos] master 9ec6f0a 1/6: * src/*: Replace simple usage of `sprintf' with `snprintf'.,
Werner LEMBERG <=