"Have you checked if DmSyncDatabase() helps at all?"

Yes, I have and it didn't see to work. But, as I mentioned earlier, if I make a 
copy of each record and then delete the original record right before closing 
the database, then this problem is gone. Of course I'm not sure if this is a 
guarantee. 

A code sample woule be like this:

n = DmNumRecords(dbRef);
for (i = 0; i < n; i++) {
&nbsp;&nbsp;&nbsp;&nbsp;hOldRec = DmQueryRecord(dbRef);
&nbsp;&nbsp;&nbsp;&nbsp;pOldRec = MemHandleLock(hOldRec);
&nbsp;&nbsp;&nbsp;&nbsp;size = MemHandleSize(hOldRec);
&nbsp;&nbsp;&nbsp;&nbsp;newPos = i + 1;
&nbsp;&nbsp;&nbsp;&nbsp;hNewRec = DmNewRecord(dbRef, &newPos , size);
&nbsp;&nbsp;&nbsp;&nbsp;pNewRec = MemHandleLock(hNewRec);
&nbsp;&nbsp;&nbsp;&nbsp;DmWrite(pNewRec, 0, pOldRec, size);
&nbsp;&nbsp;&nbsp;&nbsp;MemHandleUnlock(hOldRec);
&nbsp;&nbsp;&nbsp;&nbsp;MemHandleUnlock(hNewRec);
&nbsp;&nbsp;&nbsp;&nbsp;DmReleaseRecord(dbRef, newPos, true);
&nbsp;&nbsp;&nbsp;&nbsp;DmRemoveRecord(dbRef, i);
}

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

Reply via email to