×

Discussion Board

Results 1 to 2 of 2
  1. #1
    Registered User
    Join Date
    Mar 2005
    Posts
    13

    RCall::HangUp terminates the app

    Does anybody have any idea why the following source code terminates the application:

    void CCallListener::RunL()
    {

    #ifndef __WINS__

    iObserver->GoForeground();

    if (iStatus.Int() == KErrNone)
    {
    iLine.NotifyStatusChange(iStatus, iCallStatus);

    if (iCallStatus == RCall::EStatusHangingUp || iCallStatus == RCall::EStatusIdle || iCallStatus == RCall::EStatusUnknown)
    {
    iCall.Close();
    CEikonEnv::Static()->AlertWin(_L("Hung Up"));
    }
    else if (iCallStatus == RCall::EStatusDialling || iCallStatus == RCall::EStatusConnecting)
    {
    RLine::TLineInfo lineInfo;
    iLine.GetInfo(lineInfo);
    TInt aResult = User::LeaveIfError(iCall.OpenExistingCall(iLine, lineInfo.iNameOfLastCallAdded));
    iCall.HangUp();
    iCall.Close();
    CEikonEnv::Static()->AlertWin(_L("Dialing cancelled"));
    } else {
    CEikonEnv::Static()->AlertWin(_L(" No error"));
    }

    iIsProcessing = EFalse;
    }

    #endif

    }

    What happens is that the call is hung up and Dialing Cancelled is shown but almost immediately the application is terminated. If I comment the iCall.HangUp() call and this termination doesn't appear.

    Thank you in advance

  2. #2
    Registered User
    Join Date
    Dec 2004
    Location
    INDIA
    Posts
    21

    Re : RCall::HangUp terminates the app

    hi lilovss

    you hav prob due to not calling SetActive(). do call it at the end of RunL(). You are sending request for notiification through iLine.NotifyStatusChange(iStatus, iCallStatus) at starting of RunL and after request you also need to call SetActive().

    So just call SetActive() at the end of RunL nothing else.

    bye
    dinesh

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
×