You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4cxx-dev@logging.apache.org by ca...@apache.org on 2007/11/20 22:23:40 UTC

svn commit: r596829 - /logging/log4cxx/trunk/src/test/cpp/helpers/messagebuffertest.cpp

Author: carnold
Date: Tue Nov 20 13:23:40 2007
New Revision: 596829

URL: http://svn.apache.org/viewvc?rev=596829&view=rev
Log:
LOGCXX-209: Too small allocation, segfault on Gump

Modified:
    logging/log4cxx/trunk/src/test/cpp/helpers/messagebuffertest.cpp

Modified: logging/log4cxx/trunk/src/test/cpp/helpers/messagebuffertest.cpp
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/test/cpp/helpers/messagebuffertest.cpp?rev=596829&r1=596828&r2=596829&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/test/cpp/helpers/messagebuffertest.cpp (original)
+++ logging/log4cxx/trunk/src/test/cpp/helpers/messagebuffertest.cpp Tue Nov 20 13:23:40 2007
@@ -66,13 +66,13 @@
     void testInsertStr() {
         MessageBuffer buf;
         std::string greeting("Hello, World");
-		char* part1 = (char*) malloc(20);
-		strcpy(part1, "Hello");
-		char* part2 = (char*) malloc(20);
-		strcpy(part2, ", World");
+	char* part1 = (char*) malloc(10*sizeof(wchar_t));
+	strcpy(part1, "Hello");
+	char* part2 = (char*) malloc(10*sizeof(wchar_t));
+	strcpy(part2, ", World");
         CharMessageBuffer& retval = buf << part1 << part2;
-		free(part1);
-		free(part2);
+	free(part1);
+	free(part2);
         CPPUNIT_ASSERT_EQUAL(greeting, buf.str(retval)); 
         CPPUNIT_ASSERT_EQUAL(false, buf.hasStream());
     }
@@ -129,13 +129,13 @@
     void testInsertWStr() {
         MessageBuffer buf;
         std::wstring greeting(L"Hello, World");
-		wchar_t* part1 = (wchar_t*) malloc(20);
-		wcscpy(part1, L"Hello");
-		wchar_t* part2 = (wchar_t*) malloc(20);
-		wcscpy(part2, L", World");
+	wchar_t* part1 = (wchar_t*) malloc(10*sizeof(wchar_t));
+	wcscpy(part1, L"Hello");
+	wchar_t* part2 = (wchar_t*) malloc(10*sizeof(wchar_t));
+	wcscpy(part2, L", World");
         WideMessageBuffer& retval = buf << part1 << part2;
-		free(part1);
-		free(part2);
+	free(part1);
+	free(part2);
         CPPUNIT_ASSERT_EQUAL(greeting, buf.str(retval)); 
         CPPUNIT_ASSERT_EQUAL(false, buf.hasStream());
     }