Description: After opening and/or converting a LibreOffice Writer document which have paragraphs of mixed RTL and LTR text, LibreOffice hangs. Steps to Reproduce: 1. Open the attachment 2. Try scrolling to the end of document, or convert it to PDF Actual Results: LibreOffice Writer hangs Expected Results: LibreOffice Writer should not hang Reproducible: Always User Profile Reset: No Additional Info: Version: 25.2.0.0.alpha0+ (X86_64) / LibreOffice Community Build ID: 8bd57009d38f7551a77566a0e782a7b371aece23 CPU threads: 12; OS: Linux 6.2; UI render: default; VCL: gtk3 Locale: en-US (en_US.UTF-8); UI: en-US Calc: threaded
This is a regression, as the problem was not present in LibreOffice 24.2.2.2, but it is reproducible in the latest LO 25.2 dev master. This is the responsible commit, Adding Jonathan to CC: commit 04184aa7e3aada8f4d938d20dfdb54b3a7dd3896 author Jonathan Clark <jonathan@libreoffice.org> Thu Jul 18 08:40:16 2024 -0600 committer Jonathan Clark <jonathan@libreoffice.org> Thu Jul 25 14:23:35 2024 +0200 tree 4bfaec67439c192cd4091b47acb3d26ae074b9b7 parent 33629ff9348a0df88c11257a3921129df4875238 [diff] tdf#157829 sw: Implemented line break underflow for bidi portions $ git bisect log git bisect start # bad: [f806fc136b3410ec9a1e09320d100c78b33c867b] tdf#137335 calculate paragraph height in RTF/DOCX git bisect bad f806fc136b3410ec9a1e09320d100c78b33c867b # good: [898d5d470e24a55556f2fb244fec24df33ba8855] Revert "Related: tdf#155266 force flush after drawing native scrollbars" git bisect good 898d5d470e24a55556f2fb244fec24df33ba8855 # good: [65b3808a24db4d8b549eb1643d009330f63abf65] i#84870: Add a unit test git bisect good 65b3808a24db4d8b549eb1643d009330f63abf65 # good: [78a9afc5ea493a703467b72475a9d80a9fa8a6db] tdf#77388 sw: add missing comment git bisect good 78a9afc5ea493a703467b72475a9d80a9fa8a6db # good: [11169e6b29cbe7d782a6236d2a866b07b7501417] tdf#161853 icon choice ctrl: Drop WB_SMART_ARRANGE handling git bisect good 11169e6b29cbe7d782a6236d2a866b07b7501417 # good: [5b9dec4caa727cd46ae9163812ecfc3142157cd1] tdf#155447 qt a11y: Don't report "Unknown" for unsupported props git bisect good 5b9dec4caa727cd46ae9163812ecfc3142157cd1 # good: [92454bca2045b9e9ca636d086cb8520ccf03be22] tdf#161501 vcl: Make TabitemValue position-aware git bisect good 92454bca2045b9e9ca636d086cb8520ccf03be22 # bad: [f9df8d71a9d4ad2e7bc2e221551d9ee007f9fc60] lok: join Webdav Ticker thread. git bisect bad f9df8d71a9d4ad2e7bc2e221551d9ee007f9fc60 # skip: [27e5a74960f50ec041ef7c9e5026afe70a2b4adc] Update git submodules git bisect skip 27e5a74960f50ec041ef7c9e5026afe70a2b4adc # good: [c59730b46b4d7dd0af0c49ecbc852cda2871a5a0] tdf#161501 icon choice ctrl: Draw whole entry natively git bisect good c59730b46b4d7dd0af0c49ecbc852cda2871a5a0 # good: [7dc921e2252dbb60be98695180893e7ae499870d] Related tdf#162136: typo GapWidthSequence instead of GapwidthSequence git bisect good 7dc921e2252dbb60be98695180893e7ae499870d # skip: [6f3a37d074440d29048239bc9cc0175d90f51d9f] Update git submodules git bisect skip 6f3a37d074440d29048239bc9cc0175d90f51d9f # bad: [04184aa7e3aada8f4d938d20dfdb54b3a7dd3896] tdf#157829 sw: Implemented line break underflow for bidi portions git bisect bad 04184aa7e3aada8f4d938d20dfdb54b3a7dd3896 # good: [4aa2d5ede17ddf7345804deb200983367990a7e2] Related: tdf#162093 TableRef item specifier may occur standalone git bisect good 4aa2d5ede17ddf7345804deb200983367990a7e2 # good: [1bbcc3fdf312971ffb681b332f47369739d95dde] O[U]String overloads that return view for rest parameter git bisect good 1bbcc3fdf312971ffb681b332f47369739d95dde # good: [33629ff9348a0df88c11257a3921129df4875238] force max len for some oss-fuzz fuzzers git bisect good 33629ff9348a0df88c11257a3921129df4875238 # first bad commit: [04184aa7e3aada8f4d938d20dfdb54b3a7dd3896] tdf#157829 sw: Implemented line break underflow for bidi portions
Created attachment 195665 [details] Example reproducer I was able to reproduce this hang with the attached document.
*** Bug 162355 has been marked as a duplicate of this bug. ***
Jonathan Clark committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/cb7c70cd19237268b748d3e35f8bbed2150042ea tdf#162314 sw: Fix hang while laying out bidi portions with underflow It will be available in 25.2.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Hossein, Jonathan, please remember to mark RTL-related bugs as blocking the RTL meta-bug. Also, Hossein, please answer my email.
Jonathan Clark committed a patch related to this issue. It has been pushed to "libreoffice-24-8": https://git.libreoffice.org/core/commit/e57b68ae4cda44f843caaad34b86a39d3bae19f9 tdf#162314 sw: Fix hang while laying out bidi portions with underflow It will be available in 24.8.1. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.