I've got a strange problem I can't figure out: T3 and Zodiac devices are
hanging (needing a soft reset) after receiving characters from raw IR
when I have an outstanding SrmPrimeWakeupHandler.

The same code works on most devices: all before Palm OS 5, the Zire 31,
etc. It's only the T3 and Zodiac that I see this on. I can receive
characters just fine if I don't use a wake up handler.

Here is what the code looks like:

// prime the wake up handler
        err=SerSetWakeupHandler(serRef, serialWakeupHandler, (UInt32) &gSerialState);
 err=SerPrimeWakeupHandler(serRef, 1);


// The wakeup handler. As far as I can tell, this never gets called: the
crash happens first.
void serialWakeupHandler(UInt32 refCon) //03.06.02 GH
{
        Boolean *serialStatePtr = (UInt8 *) refCon;
//dbug("serialWakeupHandler");
        *serialStatePtr = kSerialWaitingForData;
        EvtEnqueueKey('S', 1, commandKeyMask);  //2004.10.06 GWH magic values
used in keyDownEvent
        EvtWakeup();
}


Any ideas of what it might be or interesting things I could try?

George Henne                                     
NS BASIC Corporation
http://www.nsbasic.com 



-- 
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/support/forums/

Reply via email to