My app is in development stage and The Boss wants to see updates every couple days. Yesterday, I loaded the app and databases on my spare Vx and let him twiddle the buttons for a while. Like all Bosses, he can find unique ways to make a program crash. This time, I had to do some investigating to find the cause.
My app displays photos of the patients in our medical records database. If no image of the patient exists, I put up a stock image that is part of the app. The program displays the image fine on POSE running m505, m500, and Vx ROMs. It even runs fine on my m500 device. On the Vx device it crashes when I call WinDrawBitmap() for the stock image but not when it pulls the patient images out of the database. After twiddling a while, I found that the bit depth in the bitmap family was set to '8' yet the image was a 1 bit deep image. My original image was color and it looked bad on a B&W device, so I replaced the bitmap with a B&W image and I changed the color settings within the bitmap editor but not in the bitmap family. When I changed the bitmap family entry to 1 bit and ran it on the Vx device, everything worked again. I thought PalmRez did sanity checks on bitmaps and bitmap families when it compiled the app, but it didn't happen this time. The Vx device is running OS 3.3 and the Vx ROM on POSE is running 4.1. I'm not sure how the device came to be running 3.3, to be honest. It's been reflashed a few times, dropped in a creek, and generally not treated very well. That's why it's my "spare Vx". So, I guess the moral of the story is, if you are targeting OS 3.3 devices in addition to color devices, you might check that all of your bitmap families are correct. -E -- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/
