summaryrefslogtreecommitdiffstats
path: root/qtools/scstring.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2007-03-15 10:14:23 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2007-03-15 10:14:23 (GMT)
commitcc52853c15833c9a18be11c140b99d94d9e06e9e (patch)
tree5300b179faf00eea740dda6ee3be5343c70b1c79 /qtools/scstring.cpp
parenteb591296685b8268427173e0a24f74abd987170d (diff)
downloadDoxygen-cc52853c15833c9a18be11c140b99d94d9e06e9e.zip
Doxygen-cc52853c15833c9a18be11c140b99d94d9e06e9e.tar.gz
Doxygen-cc52853c15833c9a18be11c140b99d94d9e06e9e.tar.bz2
Release-1.5.1-20070315
Diffstat (limited to 'qtools/scstring.cpp')
-rw-r--r--qtools/scstring.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/qtools/scstring.cpp b/qtools/scstring.cpp
index 18a5492..5632f57 100644
--- a/qtools/scstring.cpp
+++ b/qtools/scstring.cpp
@@ -13,10 +13,17 @@
*
*/
+// with this switch you can choose between the original qcstring implementation,
+// which implicitly shares data so copying is faster, but requires at least 12 bytes, and
+// the new implementation in this file, which has a smaller footprint (only 4 bytes for
+// an empty string), but always copies strings.
+#define SMALLSTRING
+
#include "qcstring.h"
#ifndef SMALLSTRING
#include "qcstring.cpp"
#else
+#define SCString QCString
#include <qstring.h>
#include <stdlib.h>
@@ -60,7 +67,7 @@ SCString::SCString( const char *str, uint maxlen )
if (str && ( l = QMIN(qstrlen(str),maxlen) ))
{
m_data=(char *)malloc(l+1);
- strncpy(m_data,str,maxlen);
+ strncpy(m_data,str,l+1);
m_data[l]='\0';
}
else