--- a/omaprovisioning/provisioning/IMAdapter/Src/CWPIMAdapter.cpp Tue Aug 31 16:04:06 2010 +0300
+++ b/omaprovisioning/provisioning/IMAdapter/Src/CWPIMAdapter.cpp Wed Sep 01 12:27:42 2010 +0100
@@ -25,6 +25,9 @@
#include <CWPParameter.h>
#include <wpwvadapterresource.rsg>
+#include <ApDataHandler.h>
+#include <ApAccessPointItem.h>
+#include <ApUtils.h>
#include <commdb.h>
#include "WPAdapterUtil.h"
#include "CWPIMSAPItem.h"
@@ -171,8 +174,19 @@
TUint32 iapId(KMaxTUint32);
if(data->iLinks.Count())
{
- iapId = WPIMUtil::FindGPRSL( data->iLinks );
- }
+ CApAccessPointItem* item = WPIMUtil::FindGPRSL( data->iLinks );
+ CleanupStack::PushL( item );
+
+ // get the WAP id
+ CCommsDatabase* commDb = CCommsDatabase::NewL();
+ CleanupStack::PushL(commDb);
+ TUint32 uid( item->WapUid() );
+
+ // Convert WAP uid to IAP uid
+ CApUtils* apUtils = CApUtils::NewLC( *commDb );
+ iapId = apUtils->IapIdFromWapIdL( uid );
+ CleanupStack::PopAndDestroy( 3 ); // apUtils, commDb, item
+ }
// set the IAP id as part of save item.
sapItem->SetIAPIdL( iapId );