From cac8f7d4d3db54b13d60723c2c691ed07aa25ea4 Mon Sep 17 00:00:00 2001 From: Oliver Tappe Date: Wed, 22 Dec 2010 23:04:28 +0000 Subject: [PATCH] Fix CID-10553: * avoid possible use of deleted catalog (didn't occur because we currently only have a single type of catalog add-on) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39923 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/locale/MutableLocaleRoster.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/kits/locale/MutableLocaleRoster.cpp b/src/kits/locale/MutableLocaleRoster.cpp index 09e9926349..ae4ff709cf 100644 --- a/src/kits/locale/MutableLocaleRoster.cpp +++ b/src/kits/locale/MutableLocaleRoster.cpp @@ -878,7 +878,7 @@ MutableLocaleRoster::UnloadCatalog(BCatalogAddOn* catalog) status_t res = B_ERROR; BCatalogAddOn* nextCatalog; - while (catalog) { + while (catalog != NULL) { nextCatalog = catalog->Next(); int32 count = RosterData::Default()->fCatalogAddOnInfos.CountItems(); for (int32 i = 0; i < count; ++i) { @@ -889,6 +889,7 @@ MutableLocaleRoster::UnloadCatalog(BCatalogAddOn* catalog) delete catalog; info->UnloadIfPossible(); res = B_OK; + break; } } catalog = nextCatalog;