Module: wine Branch: master Commit: 51d96dac70bcf7ce2363b1e61ce9508300811f53 URL: http://source.winehq.org/git/wine.git/?a=commit;h=51d96dac70bcf7ce2363b1e61c...
Author: Marcus Meissner marcus@jet.franken.de Date: Thu May 9 10:59:43 2013 +0200
xmllite: Free elem in error paths (Coverity).
---
dlls/xmllite/reader.c | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/dlls/xmllite/reader.c b/dlls/xmllite/reader.c index 3d0b4a8..72e9836 100644 --- a/dlls/xmllite/reader.c +++ b/dlls/xmllite/reader.c @@ -379,12 +379,18 @@ static HRESULT reader_push_element(xmlreader *reader, strval *qname) if (!elem) return E_OUTOFMEMORY;
hr = reader_strvaldup(reader, qname, &elem->qname); - if (FAILED(hr)) return hr; + if (FAILED(hr)) { + reader_free(reader, elem); + return hr; + }
if (!list_empty(&reader->elements)) { hr = reader_inc_depth(reader); - if (FAILED(hr)) return hr; + if (FAILED(hr)) { + reader_free(reader, elem); + return hr; + } }
list_add_head(&reader->elements, &elem->entry);