push
github
Fix FOLD rule for BUFHDR append. Reported by XmiliaH. (cherry-picked from commit bc1bdbf62) `bufput_append()` may fold `BUFHDR RESET` + `BUFPUT` IRs to `BUFHDR APPEND` even if the right operand (`BUFSTR`) is the PHI. If it's not the last IR in the `BUFSTR` chain, this may lead to an incorrect resulting value in the buffer, which contains a longer string since `APPEND` is used instead of `RESET`. This patch adds the corresponding check inside the fold rule. Sergey Kaplun: * added the description and the test for the problem Part of tarantool/tarantool#9145 Reviewed-by: Maxim Kokryashkin <m.kokryashkin@tarantool.org> Reviewed-by: Sergey Bronnikov <sergeyb@tarantool.org> Signed-off-by: Igor Munkin <imun@tarantool.org> (cherry picked from commit e895818a7)
5351 of 5968 branches covered (0.0%)
Branch coverage included in aggregate %.
2 of 2 new or added lines in 1 file covered. (100.0%)
2 existing lines in 2 files now uncovered.20511 of 23265 relevant lines covered (88.16%)
699891.43 hits per line