• Narayanan V's avatar
    Bug#44811 Tests with utf8 charset fail with ibmdb2i on 64bit MySQL · 858e118a
    Narayanan V authored
    wmemset was being used to fill the row buffers.
    wmemset was intended  to  fill the buffer with
    16-bit UCS2 pad values.  However,  the  64-bit
    version of wmemset uses 32-bit wide characters
    and thus filled the buffer incorrectly. In some
    cases, the null  byte  map would be overwritten,
    causing ctype_utf8.test and ibmdb2i_rir.test to
    fail, giving the error message CPF5035.
    
    This patch eliminates the use of wmemset to fill
    the row buffer. wmemset has  been  replaced with
    memset16, which always  fills  memory with 16-bit
    values.
    
    storage/ibmdb2i/db2i_conversion.cc:
      Bug#44811 Tests with utf8 charset fail with ibmdb2i on 64bit MySQL
      
      Eliminate the use of wmemset to fill
      the row buffer. Replace wmemset with
      memset16, which always  fills  memory
      with 16-bit values.
    storage/ibmdb2i/db2i_misc.h:
      Bug#44811 Tests with utf8 charset fail with ibmdb2i on 64bit MySQL
      
      Eliminate the use of wmemset to fill
      the row buffer. Replace wmemset with
      memset16, which always  fills  memory
      with 16-bit values.
    858e118a
db2i_conversion.cc 46.7 KB