diff options
author | Dov Grobgeld <dov.grobgeld@gmail.com> | 2016-01-29 15:20:34 +0200 |
---|---|---|
committer | Dov Grobgeld <dov.grobgeld@gmail.com> | 2016-01-29 15:20:34 +0200 |
commit | 56e5f121de14af07df9862a823201f3435a38a81 (patch) | |
tree | 608f0af1e4d56557bb03ed65f8d9a47d3fad8a59 | |
parent | 6ad87e038329711983b257d5fb44e20c4eb870d5 (diff) | |
download | fribidi-56e5f121de14af07df9862a823201f3435a38a81.tar.gz |
Solved max level related bug.
* Overpushing in an even level did not prevent increasing to an odd level.
-rw-r--r-- | lib/fribidi-bidi.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/fribidi-bidi.c b/lib/fribidi-bidi.c index 7fdcdec..9bf14b6 100644 --- a/lib/fribidi-bidi.c +++ b/lib/fribidi-bidi.c @@ -280,7 +280,8 @@ print_bidi_string ( */ #define PUSH_STATUS \ FRIBIDI_BEGIN_STMT \ - if LIKELY(new_level <= FRIBIDI_BIDI_MAX_EXPLICIT_LEVEL) \ + if LIKELY(over_pushed == 0 \ + && new_level <= FRIBIDI_BIDI_MAX_EXPLICIT_LEVEL) \ { \ if UNLIKELY(level == FRIBIDI_BIDI_MAX_EXPLICIT_LEVEL - 1) \ first_interval = over_pushed; \ |