From de4daffba01d87619480711c77dd13cbae5ede78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Sun, 17 Aug 2008 15:00:25 +0000 Subject: [PATCH] * Fixed bug #2616, preparseDate() would clear the elements array beyond its maximal size. * Turned off debug output accidently enabled with the last commit. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27006 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/system/libroot/os/parsedate.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/system/libroot/os/parsedate.cpp b/src/system/libroot/os/parsedate.cpp index 11823ffac1..283853de17 100644 --- a/src/system/libroot/os/parsedate.cpp +++ b/src/system/libroot/os/parsedate.cpp @@ -14,9 +14,9 @@ #include -#define TRACE_PARSEDATE 1 +#define TRACE_PARSEDATE 0 #if TRACE_PARSEDATE -# define TRACE(x) debug_printf x ; +# define TRACE(x) printf x ; #else # define TRACE(x) ; #endif @@ -482,7 +482,8 @@ preparseDate(const char* dateString, parsed_element* elements) index++; } - memset(&elements[index], 0, sizeof(parsed_element)); + if (index < MAX_ELEMENTS) + memset(&elements[index], 0, sizeof(parsed_element)); } // were there any elements?