engber@gumball.ils.nwu.edu (Mike Engber) (02/25/90)
I'm using THINK C 4.0 and my call to TESetText moves my TEHandle, even though it's been locked. ... TEHandle editHan; TEPtr editPtr; ... editHan = TENew(&textRect,&textRect); MoveHHi(editHan); HLock(editHan); editPtr = *editHan; ... TESetText(textPtr,textLength,editHan); At this point editPtr and *editHan have different values (viewed through the debugger) Restoring editPtr with editPtr = *editHan; right after the call to TESetText fixes things up, but why? I also tried putting an extra call to HLock right before the call to TESetText just in case editHan was somehow getting unlocked - no dice. In summary, when I fix up my code to assume that TESetText will move the handle, it works fine. But according to what I've read, I shouldn't have to do things like this. Is this documented is some Tech Note or something. Please respond via email if possible. -ME