>I'm seeing some very strange things happen when running my application
>from a card - well, pulling the pdb data from a card anyway. I'll go
>through a series of events, and then, mysteriously, the VFS manager
>won't be able to query records I know are there - I get a dmErrBadData
>(should VFS manager ever return a dmErrxxx?) from my VFSFileDBGetRecord
>call.
You can get dmErrxxxx values if VFS was trying to allocate memory and it
failed, since it calls DmNewHandle in a few places. Or it also returns
errors like dmErrNotRecordDB and dmErrIndexOutOfRange instead of creating
duplicates of them with the same meaning, since it is sort of doing a data
manager operation anyway.
When you get that error, try calling VFSFileDBInfo to see if that also
returns an error. (And to see that your record number is within range of
what VFSFileDBInfo says is ok.) If it returns an error, either you've got a
corrupted database, or a file that's not a db, or something less easy to
determine, e.g. you've corrupted something in memory.
-David Fedor
Palm Developer Support
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/tech/support/forums/