From 7583e87e2f55801f032e19f72427ef28c6a83c57 Mon Sep 17 00:00:00 2001 From: Vincent Povirk Date: Sat, 13 Feb 2010 12:46:18 -0600 Subject: [PATCH 2/2] ole32: Add error checking to StorageBaseImpl_CreateStorage. --- dlls/ole32/storage32.c | 11 +++++++++-- 1 files changed, 9 insertions(+), 2 deletions(-) diff --git a/dlls/ole32/storage32.c b/dlls/ole32/storage32.c index a7c12b5..88e0524 100644 --- a/dlls/ole32/storage32.c +++ b/dlls/ole32/storage32.c @@ -1132,15 +1132,22 @@ static HRESULT WINAPI StorageBaseImpl_CreateStorage( /* * Create a new directory entry for the storage */ - StorageBaseImpl_CreateDirEntry(This, &newEntry, &newEntryRef); + hr = StorageBaseImpl_CreateDirEntry(This, &newEntry, &newEntryRef); + if (FAILED(hr)) + return hr; /* * Insert the new directory entry into the parent storage's tree */ - insertIntoTree( + hr = insertIntoTree( This, This->storageDirEntry, newEntryRef); + if (FAILED(hr)) + { + StorageBaseImpl_DestroyDirEntry(This, newEntryRef); + return hr; + } /* * Open it to get a pointer to return. -- 1.6.3.3