UT_contextGlyph bugs

From: Mike Nordell (tamlin@algonet.se)
Date: Tue Nov 26 2002 - 20:04:06 EST

  • Next message: Dom Lachowicz: "Commit: Dragging images around works (sort-of)"

    In the UT_contextGlyph constructor there's a call

    memcpy(&s_table[HEBREW_START], &s_table[HEBREW_END + 1] ...

    As all (should) know, overlapping memcpy is undefined. If the areas overlap
    one should use memmove, but since there are quite a few platforms involved I
    didn't want to break anything by fixing this.

    Anyone that knows if all current platforms support memmove perhaps could
    have a look at this?

    Another thing is UT_contextGlyph::renderString. 28 lines into this function
    there's

      for(; j < CONTEXT_BUFF_SIZE; j++)
        next_tmp[j] = *(next + (j + i + 1 - len));

    I really don't know what this code does, and I'm not sure I want to know.
    What I do know is that the expression (next + (j + i + 1 - len)) evaluated
    to an address that is not initialized (called from
    fp_TextRun::_refreshDrawBuffer). Someone knowing this code might want to
    have a look at that too.

    /Mike



    This archive was generated by hypermail 2.1.4 : Tue Nov 26 2002 - 20:06:20 EST