Hi
One of my users is complaining of system crash and data corruption when, while
using my application (an animation program), his Treo 650 receives an incoming
call. I thought I had this covered in my main routine (see below) but the crash
still happens.
...
case phnLibLaunchCmdEvent:
phoneEvtP = (PhnEventPtr) cmdPBP;
if(phoneEvtP->eventType == phnEvtStartIncomingCall)
{
// incoming call; save state and exit
_appStop ();
FrmCloseAllForms ();
}
break;
...
I haven't been able to test this myself because I don't know how to simulate an
incoming call on the Tre 650 simulator.
OTOH, I will add some debugging code and ask my user to test this for me, but
it is embarassing (asking users to test software for which they paid).
Plus, he reports no crash when in browsing mode, as opposed to drawing mode.
The only thing I can think of is that, in order to provide good drawing
response, I run a tight event loop (EvtGetPen) while the user is drawing
(stylus on screen and moving), thereby probably ignoring launch codes for the
duration of the loop. I'll try to set the system to ignore incoming calls for
the duration of that loop (lasting typically anywhere from 0.5 to 5 seconds).
But the constant enabling/disabling (once every stroke cycle) has me worried.
It definitely smells like overkill.
My question: does anyone know if phnLibLaunchCmdEvent handling is not enough,
i.e. if there is some other thing I must do in order for these incoming calls
to be handled properly.
Thanks in advance
Alex
http://www.ninerpaint.com
--
For information on using the PalmSource Developer Forums, or to unsubscribe,
please see http://www.palmos.com/dev/support/forums/