+ //This is done to show end call form in missed call case also
+ //this was done on request received from HQ to solve a bug in
+ //camera application. In which if a call comes when camera is
+ //running and user disconnects before the ui is shown the camera
+ //application hangs
+ ArrayList* pCallInfoList = new (std::nothrow) ArrayList(SingleObjectDeleter);
+ pCallInfoList->Construct(1);
+ AppCallInfo callInfo;
+ result r = pCurrentActiveCallList.GetAt(0, callInfo);
+ if (r == E_SUCCESS)
+ {
+ //copy call information to new instance
+ AppCallInfo* pCaller = new (std::nothrow) AppCallInfo();
+ *pCaller = callInfo;
+ pCallInfoList->Add(pCaller);
+ //multiple active calls are present.
+ pSceneManager->GoForward(ForwardSceneTransition(IDSCN_SCENE_ENDCALL,
+ SCENE_TRANSITION_ANIMATION_TYPE_NONE, SCENE_HISTORY_OPTION_NO_HISTORY,SCENE_DESTROY_OPTION_DESTROY), pCallInfoList);
+
+ }
+ else
+ {
+ pPhoneApp->Terminate();
+ }
+