mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-03-27 08:09:31 +00:00
As suggested, extract strlen calls from sizes into variables so it isn't called twice
This commit is contained in:
parent
ed10ce2511
commit
6b024b21bf
33 changed files with 171 additions and 114 deletions
|
|
@ -2340,8 +2340,9 @@ static int Sc_ScanString(int ret)
|
|||
if (!collapseEscape(CMDtext + 1))
|
||||
return -1;
|
||||
|
||||
char* buffer = (char*)consoleAlloc(dStrlen(CMDtext));
|
||||
dStrcpy(buffer, CMDtext + 1, dStrlen(CMDtext));
|
||||
dsize_t bufferLen = dStrlen(CMDtext);
|
||||
char* buffer = (char*)consoleAlloc(bufferLen);
|
||||
dStrcpy(buffer, CMDtext + 1, bufferLen);
|
||||
|
||||
CMDlval.str = MakeToken< char* >(buffer, lineIndex);
|
||||
return ret;
|
||||
|
|
|
|||
|
|
@ -412,8 +412,9 @@ static int Sc_ScanString(int ret)
|
|||
if(!collapseEscape(CMDtext+1))
|
||||
return -1;
|
||||
|
||||
char* buffer = ( char* ) consoleAlloc( dStrlen( CMDtext ) );
|
||||
dStrcpy( buffer, CMDtext + 1, dStrlen( CMDtext ) );
|
||||
dsize_t bufferLen = dStrlen( CMDtext );
|
||||
char* buffer = ( char* ) consoleAlloc( bufferLen );
|
||||
dStrcpy( buffer, CMDtext + 1, bufferLen );
|
||||
|
||||
CMDlval.str = MakeToken< char* >( buffer, lineIndex );
|
||||
return ret;
|
||||
|
|
|
|||
|
|
@ -238,10 +238,11 @@ StrConstNode *StrConstNode::alloc(S32 lineNumber, char *str, bool tag, bool doc)
|
|||
StrConstNode *ret = (StrConstNode *)consoleAlloc(sizeof(StrConstNode));
|
||||
constructInPlace(ret);
|
||||
ret->dbgLineNumber = lineNumber;
|
||||
ret->str = (char *)consoleAlloc(dStrlen(str) + 1);
|
||||
dsize_t retStrLen = dStrlen(str) + 1;
|
||||
ret->str = (char *)consoleAlloc(retStrLen);
|
||||
ret->tag = tag;
|
||||
ret->doc = doc;
|
||||
dStrcpy(ret->str, str, dStrlen(str) + 1);
|
||||
dStrcpy(ret->str, str, retStrLen);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -646,8 +646,9 @@ static void _printf(ConsoleLogEntry::Level level, ConsoleLogEntry::Type type, co
|
|||
entry.mLevel = level;
|
||||
entry.mType = type;
|
||||
#ifndef TORQUE_SHIPPING // this is equivalent to a memory leak, turn it off in ship build
|
||||
entry.mString = (const char *)consoleLogChunker.alloc(dStrlen(pos) + 1);
|
||||
dStrcpy(const_cast<char*>(entry.mString), pos, dStrlen(pos) + 1);
|
||||
dsize_t logStringLen = dStrlen(pos) + 1;
|
||||
entry.mString = (const char *)consoleLogChunker.alloc(logStringLen);
|
||||
dStrcpy(const_cast<char*>(entry.mString), pos, logStringLen);
|
||||
|
||||
// This prevents infinite recursion if the console itself needs to
|
||||
// re-allocate memory to accommodate the new console log entry, and
|
||||
|
|
|
|||
|
|
@ -585,8 +585,9 @@ DefineConsoleFunction( strlwr, const char*, ( const char* str ),,
|
|||
"@see strupr\n"
|
||||
"@ingroup Strings" )
|
||||
{
|
||||
char *ret = Con::getReturnBuffer(dStrlen(str) + 1);
|
||||
dStrcpy(ret, str, dStrlen(str) + 1);
|
||||
dsize_t retLen = dStrlen(str) + 1;
|
||||
char *ret = Con::getReturnBuffer(retLen);
|
||||
dStrcpy(ret, str, retLen);
|
||||
return dStrlwr(ret);
|
||||
}
|
||||
|
||||
|
|
@ -602,8 +603,9 @@ DefineConsoleFunction( strupr, const char*, ( const char* str ),,
|
|||
"@see strlwr\n"
|
||||
"@ingroup Strings" )
|
||||
{
|
||||
char *ret = Con::getReturnBuffer(dStrlen(str) + 1);
|
||||
dStrcpy(ret, str, dStrlen(str) + 1);
|
||||
dsize_t retLen = dStrlen(str) + 1;
|
||||
char *ret = Con::getReturnBuffer(retLen);
|
||||
dStrcpy(ret, str, retLen);
|
||||
return dStrupr(ret);
|
||||
}
|
||||
|
||||
|
|
@ -1826,8 +1828,9 @@ DefineEngineFunction( detag, const char*, ( const char* str ),,
|
|||
if( word == NULL )
|
||||
return "";
|
||||
|
||||
char* ret = Con::getReturnBuffer( dStrlen( word + 1 ) + 1 );
|
||||
dStrcpy( ret, word + 1, dStrlen(word + 1) + 1 );
|
||||
dsize_t retLen = dStrlen(word + 1) + 1;
|
||||
char* ret = Con::getReturnBuffer(retLen);
|
||||
dStrcpy( ret, word + 1, retLen );
|
||||
return ret;
|
||||
}
|
||||
else
|
||||
|
|
|
|||
|
|
@ -617,8 +617,9 @@ DefineEngineFunction(fileBase, String, ( const char* fileName ),,
|
|||
path = szPathCopy;
|
||||
else
|
||||
path++;
|
||||
char *ret = Con::getReturnBuffer(dStrlen(path) + 1);
|
||||
dStrcpy(ret, path, dStrlen(path) + 1);
|
||||
dsize_t retLen = dStrlen(path) + 1;
|
||||
char *ret = Con::getReturnBuffer(retLen);
|
||||
dStrcpy(ret, path, retLen);
|
||||
char *ext = dStrrchr(ret, '.');
|
||||
if(ext)
|
||||
*ext = 0;
|
||||
|
|
@ -643,8 +644,9 @@ DefineEngineFunction(fileName, String, ( const char* fileName ),,
|
|||
name = szPathCopy;
|
||||
else
|
||||
name++;
|
||||
char *ret = Con::getReturnBuffer(dStrlen(name) + 1);
|
||||
dStrcpy(ret, name, dStrlen(name) + 1);
|
||||
dsize_t retLen = dStrlen(name) + 1;
|
||||
char *ret = Con::getReturnBuffer(retLen);
|
||||
dStrcpy(ret, name, retLen);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -134,10 +134,11 @@ SimObject *SimObjectMemento::restore() const
|
|||
return NULL;
|
||||
U32 numCharsToLeftParen = pLeftParen - mState;
|
||||
|
||||
tempBuffer = ( char* ) dMalloc( dStrlen( mState ) + uniqueNameLen + 1 );
|
||||
dsize_t tempBufferLen = dStrlen(mState) + uniqueNameLen + 1;
|
||||
tempBuffer = ( char* ) dMalloc( tempBufferLen );
|
||||
dMemcpy( tempBuffer, mState, numCharsToLeftParen );
|
||||
dMemcpy( &tempBuffer[ numCharsToLeftParen ], uniqueName, uniqueNameLen );
|
||||
dStrcpy( &tempBuffer[ numCharsToLeftParen + uniqueNameLen ], &mState[ numCharsToLeftParen ], dStrlen(mState) - numCharsToLeftParen + 1 );
|
||||
dStrcpy( &tempBuffer[ numCharsToLeftParen + uniqueNameLen ], &mState[ numCharsToLeftParen ], tempBufferLen - numCharsToLeftParen - uniqueNameLen );
|
||||
}
|
||||
|
||||
Con::evaluate( tempBuffer );
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue