(CW R5 - win, POSE 2.1d25, PalmOS 3.0)
There are 2 interacting applications on my Palm - Message generator and
Message receiver. I generate an ASCII record (up to 50 chars) in
generator DB, send signal for reading via launch code to receiver
application which reads record contents and stores it into buffer (another
record in receiver DB) which is resized if needed. Using this method
several messages (ie. 10 or 20) are sent to receiver. (It's actually a
kind of pager simulator.)
When I start receiver app, it reads messages from buffer and distribute
them into various records (in receiver DB) where they should be (they are
resized if needed).
Now, when the number of messages to be debuffered is smaller then some
critical number (depends on length and type of messages in buffer - it's 7
or 10...), it works fine. If the number is bigger, it fails with "DM Write
Check failed" fatal display. Since log file is generated in Memo Pad, I
know approximately where it failed and I do single steping in debugger.
What happens is that all the messages can be succesfully debuffered in
single steping. I tried it several times with various messages and:

  The same thing that fails in normal run works well when single
  steping?!?

What can be the reason? I don't know how MemoryMgr works internaly during
debugging, but it looks like the system has time to do *something* in
memory when single steping and provide successful access to records 
instead of normal run when it hasn't (Ok, I know it sounds like a fairy
tale, but Halloween etc...)...

Regards,

-DR

Reply via email to