Mark,

>I'm testing my application using the emulator and gremlins.  After several
>hours of run-time I get an "Invalid word wrap info" error.  How does this
>error originate and what is the fix?  It occurs using gremlins 0 and 1.  My
>application has only one text field.

This error is reported when the lines array info for a field doesn't seem
to be correct. The actual code snippet that does the check looks like:

        if ( (! fld->attr.singleLine) && (fld->text))
                {
                ErrFatalDisplayIf (!fld->lines, "No word wrapping info");

                pos = fld->lines->start;
                for (i = 0; i < numLines; i++)
                        {
                        ErrFatalDisplayIf (pos != fld->lines[i].start,
                                "Invalid word wrapping info");
                        pos += fld->lines[i].length;

                        ErrFatalDisplayIf (pos > fld->textLen,
                                "Invalid word wrapping info");
                        }
                }

If you're directly modifying the text length of a field, then it's possible
that you've gotten it out of sync with the lines array.

Another possibility is that FldRecalculateField has a bug where if you pass
false for the redraw parameter, it doesn't re-wrap the text.

I'd probably try to recreate the problem in Pose, then use the PalmDebugger
to check out the field structure to get a better idea of what went wrong.

-- Ken

Ken Krugler
TransPac Software, Inc.
<http://www.transpac.com>
+1 650-947-9222 (direct) +1 408-261-7550 (main)


Reply via email to