Skip to content
This repository was archived by the owner on Aug 31, 2021. It is now read-only.

Commit 08eb496

Browse files
committed
[ CID 118225 ] Fix memory leak - unreleased string in MCCefDictionaryToBrowserDictionary
1 parent 49ef527 commit 08eb496

2 files changed

Lines changed: 12 additions & 2 deletions

File tree

libbrowser/src/libbrowser_cef.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ bool MCCefListToBrowserList(CefRefPtr<CefListValue> p_list, MCBrowserListRef &r_
119119
char *t_string = nil;
120120
t_success = MCCefStringToUtf8String(p_list->GetString(i), t_string) && MCBrowserListSetUTF8String(t_list, i, t_string);
121121
if (t_string != nil)
122-
MCCStringFree(t_string);
122+
MCCStringFree(t_string);
123123
break;
124124
}
125125

@@ -221,6 +221,9 @@ bool MCCefDictionaryToBrowserDictionary(CefRefPtr<CefDictionaryValue> p_dict, MC
221221
t_success = false;
222222
}
223223
}
224+
225+
if (t_key != nil)
226+
MCCStringFree(t_key);
224227
}
225228

226229
if (t_success)

libbrowser/src/libbrowser_value.cpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -663,7 +663,14 @@ class MCBrowserDictionary : public MCBrowserRefCounted
663663
if (p_size <= m_capacity)
664664
return true;
665665

666-
return MCBrowserMemoryResizeArray(p_size, m_elements, m_capacity) && MCBrowserMemoryResizeArray(p_size, m_keys, m_capacity);
666+
uindex_t t_capacity;
667+
if (MCBrowserMemoryResizeArray(p_size, m_elements, t_capacity) && MCBrowserMemoryResizeArray(p_size, m_keys, t_capacity))
668+
{
669+
m_capacity = t_capacity;
670+
return true;
671+
}
672+
673+
return false;
667674
}
668675

669676
bool FindElement(const char *p_key, uint32_t &r_index)

0 commit comments

Comments
 (0)