In testing out the recently released PalmOS 3.3 beta, I've been seeing strange
problems with code resources (resource type = 'code'). I'm wondering if
anything has changed in 3.3. Here is what I see:

I have something that goes like:

    handle = DmGet1Resource('code', id);
    lockCount = MemHandleLockCount(handle); /* paranoia check */
    if (lockCount != 0 && lockCount != memPtrLockCount) {
         ErrFatalDisplayIf(1, ...);
    }

    ptr = MemHandleLock(handle);

    etc....

MemLockCount() now sometimes (but always for the same resource) reports
non-zero values when it used to return zero. Could MemHandleLockCount() have
changed in some way, or is something I don't know about now automagically
loading/locking the resource. The problem is very repeatable. By the way, the
MemHandleLock() always works.

Sometimes (in a different application) the initial DmGet1Resource() is
failing. I have no idea what could cause this, other than maybe the open
database list having been whacked in some way.

Have SysLibLoad() and friends changed?

Are there any new launch code situations that run my app/code in places I
should be aware of? - specifically between the time I load an app into the
emulator, and click on apps, and click on my app.

clutching at straws...

djw

Reply via email to