shaper: don't mingle run ID and bidi embedding level
shaper: don't mingle run ID and bidi embedding level

A libass-chosen shaping run boundary can coincide with a bidi embedding level
boundary such that the differences in shaper_run_id and emblevel cancel out.
For example:

    English עבריתEnglish again (with parentheses)

(with no space after the Hebrew)
has ass_shaper_find_runs split runs after the Hebrew, adding 1 to shape_run_id,
while the RTL embed also ends in the same place, removing 1 from emblevel.

As a result, two shape runs that should be separate merge together.
In this example, this leads to HarfBuzz thinking that "English again (with
parentheses)" is still right-to-left, so it flips the parenthesis glyphs.

To avoid this, don't attempt to add these numbers together. Just require
explicitly that both numbers stay constant, rather than their sum.

MrSmile/libass,ShiftMediaProject/libass,Akemi/libass,ShiftMediaProject/libass,Akemi/libass,astiob/libass,astiob/libass,xbmc/libass,Akemi/libass,libass/libass,libass/libass,MrSmile/libass,xbmc/libass