tzservices/tzserver/Client/Source/timezoneuserdata.cpp
branchGCC_SURGE
changeset 52 6cd49ffea600
parent 35 13fd6fd25fe7
child 81 676b6116ca93
--- a/tzservices/tzserver/Client/Source/timezoneuserdata.cpp	Tue Jun 15 16:07:48 2010 +0100
+++ b/tzservices/tzserver/Client/Source/timezoneuserdata.cpp	Thu Jul 22 16:35:22 2010 +0100
@@ -1,4 +1,4 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of "Eclipse Public License v1.0"
@@ -523,7 +523,6 @@
 	iTzServer.DeleteUserTimeZoneL(aTzId);
 	}
 
-
 /**
 Returns the time zone identifiers for all existing user-defined time zones.
 
@@ -533,5 +532,19 @@
 */	
 EXPORT_C void CTzUserData::GetTzIdsL(RPointerArray<CTzId>& aTzIds) const
 	{
+	CleanupStack::PushL( TCleanupItem(CleanupPointerArray, &aTzIds) );
 	iTzServer.GetUserTimeZoneIdsL(aTzIds);
+	CleanupStack::Pop();
 	}
+
+void CTzUserData::CleanupPointerArray(TAny* aArray)
+    {
+    RPointerArray<CTzId>* array = static_cast<RPointerArray<CTzId>* >(aArray);
+    if (array)
+        {
+        array->ResetAndDestroy();
+        array->Close();
+        }
+    }
+ 
+