Chris Tutty wrote:
> Often this is a sign of memory corruption, unitialised
> pointers, use of freed memory, etc.

Thanks for the inputs. I've checked over my code, and I use pointers minimally. 
I normally declare strings as arrays (with dimensions), not just pointers, but 
there is one case that I'm unsure of. I have a string pointer declared as "char 
*s", then use it like this:

  s = CtlGetLabel(GetObjectPtr(ReadyButton));

This has always given me a warning "assignment discards qualifiers from pointer 
target type", which I've simply ignored, and thought I was getting away with 
it. The prototype for the CtlGetLabel() API is given as 

const Char *CtlGetLabel(const ControlType *controlP)

so I've assumed that it was complaining that my string s wasn't declared as 
"const". Is this right? The reason that I suspect this is because when 
single-stepping through my program with the debugger (and POSE), when my 
assignment statement is executed, a variable completely separate from s takes 
on a different value. The string pointed to by s does still have the value that 
I'm looking for, but it's really concerning to have it alter the value in a 
memory location completely removed from there. Is there another way to capture 
the label on a button?

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

Reply via email to