Module: wine Branch: master Commit: ffb56bf700a234e3e36994fcea3d4380f74b6c3e URL: https://gitlab.winehq.org/wine/wine/-/commit/ffb56bf700a234e3e36994fcea3d438...
Author: Gabriel Ivăncescu gabrielopcode@gmail.com Date: Wed Jun 21 21:12:50 2023 +0300
mshtml: Fix leaks in create_all_list.
Signed-off-by: Gabriel Ivăncescu gabrielopcode@gmail.com
---
dlls/mshtml/htmlelemcol.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/mshtml/htmlelemcol.c b/dlls/mshtml/htmlelemcol.c index 6172bc2d57e..75c86a8b4dd 100644 --- a/dlls/mshtml/htmlelemcol.c +++ b/dlls/mshtml/htmlelemcol.c @@ -656,8 +656,6 @@ static void create_all_list(HTMLDOMNode *elem, elem_vector_t *buf) }
nsIDOMNodeList_GetLength(nsnode_list, &list_len); - if(!list_len) - return;
for(i=0; i<list_len; i++) { nsres = nsIDOMNodeList_Item(nsnode_list, i, &iter); @@ -672,13 +670,18 @@ static void create_all_list(HTMLDOMNode *elem, elem_vector_t *buf) hres = get_node(iter, TRUE, &node); if(FAILED(hres)) { FIXME("get_node failed: %08lx\n", hres); + nsIDOMNode_Release(iter); continue; }
elem_vector_add(buf, elem_from_HTMLDOMNode(node)); create_all_list(node, buf); } + + nsIDOMNode_Release(iter); } + + nsIDOMNodeList_Release(nsnode_list); }
IHTMLElementCollection *create_all_collection(HTMLDOMNode *node, BOOL include_root)