diff options
| author | Matthias Melcher <fltk@matthiasm.com> | 2008-01-09 21:23:51 +0000 |
|---|---|---|
| committer | Matthias Melcher <fltk@matthiasm.com> | 2008-01-09 21:23:51 +0000 |
| commit | 5e3d4fc7db139616fee63f0c630e837d5affc16e (patch) | |
| tree | ce93cf1374c0b3c7bc72fc7d25a33757e2cd37f2 | |
| parent | 69e3530aba01e666702c7fdc669de7e5b2f07a4f (diff) | |
STR #1853: fixed potntial buffer overrun un Fl_Preferences
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@6015 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
| -rw-r--r-- | CHANGES | 2 | ||||
| -rw-r--r-- | src/Fl_Preferences.cxx | 5 |
2 files changed, 6 insertions, 1 deletions
@@ -5,6 +5,8 @@ CHANGES IN FLTK 1.1.8 STR #1639, STR #1645, STR #1644, STR #1792, STR #1793, STR #1742, STR #1777, STR #1794, STR #1827, STR #1843, STR #1796, STR #1815, STR #1726, STR #1753) + - Fixed potential buffer overrun + in Fl_Preferences (STR #1853) - Fixed method attributes in consecutive class declarations in FLUID (STR #1741) - FLUID checks for seperately declared callbacks to diff --git a/src/Fl_Preferences.cxx b/src/Fl_Preferences.cxx index 83103819a..049c24de9 100644 --- a/src/Fl_Preferences.cxx +++ b/src/Fl_Preferences.cxx @@ -991,7 +991,10 @@ void Fl_Preferences::Node::set( const char *line ) const char *c = strchr( line, ':' ); if ( c ) { - strlcpy( nameBuffer, line, c-line+1); + unsigned int len = c-line+1; + if ( len >= sizeof( nameBuffer ) ) + len = sizeof( nameBuffer ); + strlcpy( nameBuffer, line, len ); set( nameBuffer, c+1 ); } else |
