From cd58ac99684738eec50365a04a0d88f8145ef46a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Tue, 17 Feb 2004 04:06:44 +0000 Subject: [PATCH] Minitiure optimizations for BString: eliminated a superfluous variable, and removed the "newData" calculation, since "dataLen" already contained the same value. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6613 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/support/String.cpp | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/src/kits/support/String.cpp b/src/kits/support/String.cpp index 16a15ee010..d39d2a38ae 100644 --- a/src/kits/support/String.cpp +++ b/src/kits/support/String.cpp @@ -1731,14 +1731,12 @@ BString::UnlockBuffer(int32 length) { _SetUsingAsCString(false); //debug - int32 len = length; + if (length < 0) + length = (_privateData == NULL) ? 0 : strlen(_privateData); - if (len < 0) - len = (_privateData == NULL) ? 0 : strlen(_privateData); + if (length != Length()) + _GrowBy(length - Length()); - if (len != Length()) - _GrowBy(len - Length()); - return *this; } @@ -2014,7 +2012,7 @@ BString::operator<<(float f) /*---- Private or Reserved ------------------------------------------------*/ -char* +char * BString::_Alloc(int32 dataLen) { char *dataPtr = _privateData ? _privateData - sizeof(int32) : NULL; @@ -2028,9 +2026,9 @@ BString::_Alloc(int32 dataLen) if (dataPtr) { dataPtr += sizeof(int32); _privateData = dataPtr; - int32 newLen = allocLen - sizeof(int32) - 1; - _SetLength(newLen); - _privateData[newLen] = '\0'; + + _SetLength(dataLen); + _privateData[dataLen] = '\0'; } return dataPtr; }