diff options
Diffstat (limited to 'src/VBox/Runtime/common/string/stringalloc.cpp')
| -rw-r--r-- | src/VBox/Runtime/common/string/stringalloc.cpp | 72 |
1 files changed, 31 insertions, 41 deletions
diff --git a/src/VBox/Runtime/common/string/stringalloc.cpp b/src/VBox/Runtime/common/string/stringalloc.cpp index d7b2f1fc007..7f7e31f0a5c 100644 --- a/src/VBox/Runtime/common/string/stringalloc.cpp +++ b/src/VBox/Runtime/common/string/stringalloc.cpp @@ -4,7 +4,7 @@ */ /* - * Copyright (C) 2006-2007 Oracle Corporation + * Copyright (C) 2006-2010 Oracle Corporation * * This file is part of VirtualBox Open Source Edition (OSE), as * available from http://www.virtualbox.org. This file is free software; @@ -39,19 +39,19 @@ -RTDECL(char *) RTStrAlloc(size_t cb) +RTDECL(char *) RTStrAllocTag(size_t cb, const char *pszTag) { - char *psz = (char *)RTMemAlloc(RT_MAX(cb, 1)); + char *psz = (char *)RTMemAllocTag(RT_MAX(cb, 1), pszTag); if (psz) *psz = '\0'; return psz; } -RT_EXPORT_SYMBOL(RTStrAlloc); +RT_EXPORT_SYMBOL(RTStrAllocTag); -RTDECL(int) RTStrAllocEx(char **ppsz, size_t cb) +RTDECL(int) RTStrAllocExTag(char **ppsz, size_t cb, const char *pszTag) { - char *psz = *ppsz = (char *)RTMemAlloc(RT_MAX(cb, 1)); + char *psz = *ppsz = (char *)RTMemAllocTag(RT_MAX(cb, 1), pszTag); if (psz) { *psz = '\0'; @@ -59,10 +59,10 @@ RTDECL(int) RTStrAllocEx(char **ppsz, size_t cb) } return VERR_NO_STR_MEMORY; } -RT_EXPORT_SYMBOL(RTStrAlloc); +RT_EXPORT_SYMBOL(RTStrAllocTag); -RTDECL(int) RTStrRealloc(char **ppsz, size_t cbNew) +RTDECL(int) RTStrReallocTag(char **ppsz, size_t cbNew, const char *pszTag) { char *pszOld = *ppsz; if (!cbNew) @@ -72,7 +72,7 @@ RTDECL(int) RTStrRealloc(char **ppsz, size_t cbNew) } else if (pszOld) { - char *pszNew = (char *)RTMemRealloc(pszOld, cbNew); + char *pszNew = (char *)RTMemReallocTag(pszOld, cbNew, pszTag); if (!pszNew) return VERR_NO_STR_MEMORY; pszNew[cbNew - 1] = '\0'; @@ -80,7 +80,7 @@ RTDECL(int) RTStrRealloc(char **ppsz, size_t cbNew) } else { - char *pszNew = (char *)RTMemAlloc(cbNew); + char *pszNew = (char *)RTMemAllocTag(cbNew, pszTag); if (!pszNew) return VERR_NO_STR_MEMORY; pszNew[0] = '\0'; @@ -89,6 +89,7 @@ RTDECL(int) RTStrRealloc(char **ppsz, size_t cbNew) } return VINF_SUCCESS; } +RT_EXPORT_SYMBOL(RTStrReallocTag); RTDECL(void) RTStrFree(char *pszString) { @@ -98,25 +99,25 @@ RTDECL(void) RTStrFree(char *pszString) RT_EXPORT_SYMBOL(RTStrFree); -RTDECL(char *) RTStrDup(const char *pszString) +RTDECL(char *) RTStrDupTag(const char *pszString, const char *pszTag) { AssertPtr(pszString); size_t cch = strlen(pszString) + 1; - char *psz = (char *)RTMemAlloc(cch); + char *psz = (char *)RTMemAllocTag(cch, pszTag); if (psz) memcpy(psz, pszString, cch); return psz; } -RT_EXPORT_SYMBOL(RTStrDup); +RT_EXPORT_SYMBOL(RTStrDupTag); -RTDECL(int) RTStrDupEx(char **ppszString, const char *pszString) +RTDECL(int) RTStrDupExTag(char **ppszString, const char *pszString, const char *pszTag) { AssertPtr(ppszString); AssertPtr(pszString); size_t cch = strlen(pszString) + 1; - char *psz = (char *)RTMemAlloc(cch); + char *psz = (char *)RTMemAllocTag(cch, pszTag); if (psz) { memcpy(psz, pszString, cch); @@ -125,15 +126,15 @@ RTDECL(int) RTStrDupEx(char **ppszString, const char *pszString) } return VERR_NO_MEMORY; } -RT_EXPORT_SYMBOL(RTStrDupEx); +RT_EXPORT_SYMBOL(RTStrDupExTag); -RTDECL(char *) RTStrDupN(const char *pszString, size_t cchMax) +RTDECL(char *) RTStrDupNTag(const char *pszString, size_t cchMax, const char *pszTag) { AssertPtr(pszString); char const *pszEnd = RTStrEnd(pszString, cchMax); size_t cch = pszEnd ? (uintptr_t)pszEnd - (uintptr_t)pszString : cchMax; - char *pszDst = (char *)RTMemAlloc(cch + 1); + char *pszDst = (char *)RTMemAllocTag(cch + 1, pszTag); if (pszDst) { memcpy(pszDst, pszString, cch); @@ -141,18 +142,18 @@ RTDECL(char *) RTStrDupN(const char *pszString, size_t cchMax) } return pszDst; } -RT_EXPORT_SYMBOL(RTStrDupN); +RT_EXPORT_SYMBOL(RTStrDupNTag); -RTDECL(int) RTStrAAppend(char **ppsz, const char *pszAppend) +RTDECL(int) RTStrAAppendTag(char **ppsz, const char *pszAppend, const char *pszTag) { if (!pszAppend) return VINF_SUCCESS; - return RTStrAAppendN(ppsz, pszAppend, RTSTR_MAX); + return RTStrAAppendNTag(ppsz, pszAppend, RTSTR_MAX, pszTag); } -RTDECL(int) RTStrAAppendN(char **ppsz, const char *pszAppend, size_t cchAppend) +RTDECL(int) RTStrAAppendNTag(char **ppsz, const char *pszAppend, size_t cchAppend, const char *pszTag) { if (!cchAppend) return VINF_SUCCESS; @@ -162,7 +163,7 @@ RTDECL(int) RTStrAAppendN(char **ppsz, const char *pszAppend, size_t cchAppend) Assert(cchAppend == RTStrNLen(pszAppend, cchAppend)); size_t const cchOrg = *ppsz ? strlen(*ppsz) : 0; - char *pszNew = (char *)RTMemRealloc(*ppsz, cchOrg + cchAppend + 1); + char *pszNew = (char *)RTMemReallocTag(*ppsz, cchOrg + cchAppend + 1, pszTag); if (!pszNew) return VERR_NO_STR_MEMORY; @@ -174,7 +175,7 @@ RTDECL(int) RTStrAAppendN(char **ppsz, const char *pszAppend, size_t cchAppend) } -RTDECL(int) RTStrAAppendExNV(char **ppsz, size_t cPairs, va_list va) +RTDECL(int) RTStrAAppendExNVTag(char **ppsz, size_t cPairs, va_list va, const char *pszTag) { AssertPtr(ppsz); if (!cPairs) @@ -211,7 +212,7 @@ RTDECL(int) RTStrAAppendExNV(char **ppsz, size_t cPairs, va_list va) /* * Try reallocate the string. */ - char *pszNew = (char *)RTMemRealloc(*ppsz, cchNewTotal); + char *pszNew = (char *)RTMemReallocTag(*ppsz, cchNewTotal, pszTag); if (!pszNew) return VERR_NO_STR_MEMORY; @@ -231,21 +232,10 @@ RTDECL(int) RTStrAAppendExNV(char **ppsz, size_t cPairs, va_list va) *ppsz = pszNew; return VINF_SUCCESS; } -RT_EXPORT_SYMBOL(RTStrAAppendExNV); +RT_EXPORT_SYMBOL(RTStrAAppendExNVTag); -RTDECL(int) RTStrAAppendExN(char **ppsz, size_t cPairs, ...) -{ - va_list va; - va_start(va, cPairs); - int rc = RTStrAAppendExNV(ppsz, cPairs, va); - va_end(va); - return rc; -} -RT_EXPORT_SYMBOL(RTStrAAppendExN); - - -RTDECL(int) RTStrATruncate(char **ppsz, size_t cchNew) +RTDECL(int) RTStrATruncateTag(char **ppsz, size_t cchNew, const char *pszTag) { char *pszOld = *ppsz; if (!cchNew) @@ -253,7 +243,7 @@ RTDECL(int) RTStrATruncate(char **ppsz, size_t cchNew) if (pszOld && *pszOld) { *pszOld = '\0'; - char *pszNew = (char *)RTMemRealloc(pszOld, 1); + char *pszNew = (char *)RTMemReallocTag(pszOld, 1, pszTag); if (pszNew) *ppsz = pszNew; } @@ -267,12 +257,12 @@ RTDECL(int) RTStrATruncate(char **ppsz, size_t cchNew) pszOld[cchNew] = '\0'; if (!pszZero) { - char *pszNew = (char *)RTMemRealloc(pszOld, cchNew + 1); + char *pszNew = (char *)RTMemReallocTag(pszOld, cchNew + 1, pszTag); if (pszNew) *ppsz = pszNew; } } return VINF_SUCCESS; } -RT_EXPORT_SYMBOL(RTStrATruncate); +RT_EXPORT_SYMBOL(RTStrATruncateTag); |
