summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatthias Melcher <fltk@matthiasm.com>2008-01-09 21:23:51 +0000
committerMatthias Melcher <fltk@matthiasm.com>2008-01-09 21:23:51 +0000
commit5e3d4fc7db139616fee63f0c630e837d5affc16e (patch)
treece93cf1374c0b3c7bc72fc7d25a33757e2cd37f2 /src
parent69e3530aba01e666702c7fdc669de7e5b2f07a4f (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
Diffstat (limited to 'src')
-rw-r--r--src/Fl_Preferences.cxx5
1 files changed, 4 insertions, 1 deletions
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