• Alexander Barkov's avatar
    A few minor Unicode collation customization improvements were made, · bd3dc542
    Alexander Barkov authored
    which makes it possible to add more world language collations
    with very complex collation rules (e.g. Myanmar):
    - Weight string for a single character in a user defined collation
      was erroneously limited to 7 weights (instead of 8 weights).
      Added an extra element in the user-defined weight arrays,
      to fit 8 non-zero weights.
    - Weight string limit for contractions was made two times longer (16 weights),
      which allows longer contractions without affecting the performance
      of filesort.
    - A user-defined collation now refuses to initialize and reports an error
      in case if a weight string gets longer than 8 weights for a single character,
      or longer than 16 weights for a contraction. Previously weight strings
      for such characters (and contractions) were cut, so a collation
      could silently start with wrong rules.
    - Fixed a bug in handling rules like "&a << b" in combination with
      shift-after-method="expand". The primary weight for "b" was not
      correctly calculated, which erroneously made "b" primary greater than "a"
      instead of primary equal to "a".
    bd3dc542
ctype-uca.c 588 KB