You call MemHandleLock before MemHandleResize this is why you have
this error.
----- Original Message -----
From: "Pit" <[EMAIL PROTECTED]>
Newsgroups: palm-dev-forum
To: "Palm Developer Forum" <[EMAIL PROTECTED]>
Sent: Monday, April 19, 2004 3:54 PM
Subject: Problem with MemHandleResize - memErrChunkLocked
> Hi folks,
>
> im having troubles with the MemHandleResize-function. I use this function
in
> the following code:
>
> When i call this function 4 times: everthing is OK!
> When i call it the fifth time, i get an memErrChunkLocked-error.
>
> I dont know why this happens, and i m getting more and more frustrated. I
> hope there is anybody, who
> can point me to the problem and hopefully to the solution.
>
> Best Regards
> Peter
>
>
> static void SaveIT (char* it) {
> Err error;
> MemHandle itHandle;
> MemHandle itemHandle;
> UInt16 oldSize;
> int position;
>
> if (myAppPrefs.it== NULL) {
> itHandle= MemHandleNew (sizeof (char*));
> myAppPrefs.it= MemHandleLock (itHandle);
> itemHandle = MemHandleNew (StrLen (it) + 1);
> myAppPrefs.it[0] = MemHandleLock (itemHandle);
> StrCopy (myAppPrefs.it[0], it);
> MemHandleUnlock (itemHandle);
> MemHandleUnlock (itHandle);
> }
> else {
> itHandle= MemPtrRecoverHandle (myAppPrefs.it);
> oldSize = MemHandleSize (itHandle);
> position = oldSize / sizeof (char*);
>
> MemHandleLock (itHandle);
> error = MemHandleResize (itHandle, oldSize + sizeof (char*));
> if (error == memErrChunkLocked) {
> PrintToField ("memErrChunkLocked");
> }
>
> itemHandle = MemHandleNew (StrLen (it) + 1);
> myAppPrefs.it[position] = MemHandleLock (itemHandle);
> StrCopy (myAppPrefs.it[position], it);
> MemHandleUnlock (itemHandle);
>
> MemHandleUnlock (itHandle);
> }
> }
>
> The used struct, hast the following design
>
> typedef struct {
> int number;
> char** nothing;
> char** it;
> } AppPrefs;
> AppPrefs myAppPrefs = {-1, NULL, NULL}; // Initialization
>
>
>
> --
> For information on using the Palm Developer Forums, or to unsubscribe,
please see http://www.palmos.com/dev/support/forums/
>
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/support/forums/