CResourceDirectoryEntry::GetName() does not need to duplicate the string
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6603 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
1f8866ccd8
commit
e58680c996
2 changed files with 4 additions and 12 deletions
|
@ -24,7 +24,7 @@ void __declspec(dllexport) myFunction(HWND hwndParent, int string_size,
|
||||||
|
|
||||||
// do your stuff here
|
// do your stuff here
|
||||||
{
|
{
|
||||||
LPTSTR msgbuf = GlobalAlloc(GPTR, (3 + string_size + 1) * sizeof(*msgbuf));
|
LPTSTR msgbuf = (LPTSTR) GlobalAlloc(GPTR, (3 + string_size + 1) * sizeof(*msgbuf));
|
||||||
if (msgbuf)
|
if (msgbuf)
|
||||||
{
|
{
|
||||||
wsprintf(msgbuf, TEXT("$0=%s"), getuservariable(INST_0));
|
wsprintf(msgbuf, TEXT("$0=%s"), getuservariable(INST_0));
|
||||||
|
|
|
@ -719,8 +719,6 @@ void CResourceEditor::WriteRsrcSec(BYTE* pbRsrcSec) {
|
||||||
|
|
||||||
seeker += RALIGN(iLen * sizeof(WINWCHAR) + sizeof(WORD), 4);
|
seeker += RALIGN(iLen * sizeof(WINWCHAR) + sizeof(WORD), 4);
|
||||||
|
|
||||||
free(szName);
|
|
||||||
|
|
||||||
qStrings.pop();
|
qStrings.pop();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -823,15 +821,11 @@ bool CResourceDirectory::AddEntry(CResourceDirectoryEntry* entry) {
|
||||||
for (i = 0; i < m_rdDir.NumberOfNamedEntries; i++) {
|
for (i = 0; i < m_rdDir.NumberOfNamedEntries; i++) {
|
||||||
WINWCHAR* szName = m_vEntries[i]->GetName();
|
WINWCHAR* szName = m_vEntries[i]->GetName();
|
||||||
int cmp = WinWStrCmp(szName, szEntName);
|
int cmp = WinWStrCmp(szName, szEntName);
|
||||||
free(szName);
|
if (cmp == 0)
|
||||||
if (cmp == 0) {
|
|
||||||
free(szEntName);
|
|
||||||
return false;
|
return false;
|
||||||
}
|
|
||||||
if (cmp > 0)
|
if (cmp > 0)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
free(szEntName);
|
|
||||||
m_rdDir.NumberOfNamedEntries++;
|
m_rdDir.NumberOfNamedEntries++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -874,8 +868,6 @@ int CResourceDirectory::Find(const WINWCHAR* szName) {
|
||||||
|
|
||||||
WINWCHAR* szEntName = m_vEntries[i]->GetName();
|
WINWCHAR* szEntName = m_vEntries[i]->GetName();
|
||||||
int cmp = WinWStrCmp(szName, szEntName);
|
int cmp = WinWStrCmp(szName, szEntName);
|
||||||
free(szEntName);
|
|
||||||
|
|
||||||
if (!cmp)
|
if (!cmp)
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
|
@ -963,7 +955,7 @@ CResourceDirectoryEntry::CResourceDirectoryEntry(const WINWCHAR* szName, CResour
|
||||||
}
|
}
|
||||||
|
|
||||||
CResourceDirectoryEntry::~CResourceDirectoryEntry() {
|
CResourceDirectoryEntry::~CResourceDirectoryEntry() {
|
||||||
if (m_szName && m_bHasName)
|
if (m_bHasName)
|
||||||
free(m_szName);
|
free(m_szName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -977,7 +969,7 @@ bool CResourceDirectoryEntry::HasName() {
|
||||||
|
|
||||||
// Don't forget to free the memory used by the string after usage!
|
// Don't forget to free the memory used by the string after usage!
|
||||||
WINWCHAR* CResourceDirectoryEntry::GetName() {
|
WINWCHAR* CResourceDirectoryEntry::GetName() {
|
||||||
return m_bHasName ? WinWStrDupFromWinWStr(m_szName) : 0;
|
return m_bHasName ? m_szName : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int CResourceDirectoryEntry::GetNameLength() {
|
int CResourceDirectoryEntry::GetNameLength() {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue