I'm running into what appears to be a bug in the 3.5 ROM, and want to know if 
anyone can point out something stupid I'm doing, confirm the bug, or suggest 
a workaround. The problem is in the DmSetDatabaseInfo call in the 3.5 ROM.

I am seeing some crashes under the 3.5 ROM, but not under other ROM versions 
with the same program. The problem does not occur in all cases, but in 
situations where it does occur, it is 100% reproducible.

The crash has never been seen on anything other than the 3.5 ROM. It has been 
seen both on the debug ROM and on a Palm IIIc.

I have isolated the crash in to one case I can reproduce on the 3.0a5 
emulator to a call to DmSetDatabaseInfo:

  DmSetDatabaseInfo(currEntryHeader.card, currEntryHeader.dbID, 
currEntryHeader.name,
    NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);

I have checked and rechecked the parameters. They appear to be correct. I 
have tried making the call with currEntryHeader.name replaced by NULL; this 
works fine. I have tried copying currEntryHeader.name to a local variable; 
the crash still occurs. I have tried setting all unused characters in the 
string (those past the null terminator) to 0; the crash still occurs.

When the crash occurs, the stack looks like this:

 0x10C1CBF0(DmSetDatabaseInfo)
 0x10C1D8D2(DmCloseDatabase)
 0x10C21F0C(PrvValidateDmAccess)
 0x10C111C2(MemPtrSize)
 0x10C111C2(MemPtrSize)
 0x10C12D5E(PrvPtrCheck)

Has anyone seen anything like this? Is there anything you folks see that I 
might be missing? Is there any other way to change the name of a database?

Mike Westerfield

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

Reply via email to