https://bugs.documentfoundation.org/show_bug.cgi?id=165540

            Bug ID: 165540
           Summary: Writer kashida position array corrupted during editing
           Product: LibreOffice
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: medium
         Component: Writer
          Assignee: [email protected]
          Reporter: [email protected]

Description:
For kashida justification, Writer stores per-paragraph lists of valid kashida
insertion positions as string indices inside SwScriptInfo instances. Sometimes,
while editing justified paragraphs, this data can be corrupted.

An early symptom of this problem is the following warning message:

> warn:sw.core:28915:28915:sw/source/core/text/porlay.cxx:1573: Kashida array 
> contains wrong data

After this data is corrupted, it's possible that LibreOffice will crash due to
an out-of-bounds vector access inside SwScriptInfo::KashidaJustify.

For more details, see bug 164140 comment 15:

(In reply to Hossein from comment #15)
> Created attachment 199549 [details]
> crash log + back trace
> 
> @Jonathan:
> Thanks for providing this fix. It improves the situation a lot, and I no
> longer see text going out of margin in a single page.
> 
> On the other hand:
> 
> 1. LibreOffice crashes for me by typing a lot of text. The attachment is the
> log and the stack trace which I get.
> 
> 2. The same issue happens in a paragraph, long enough to span across pages.
> Please see the next attachment, that I will attach shortly.
> 
> 3. It might be related that, if you create a big paragraph with a very long
> word (for example type a few hundreds of "a" together) LibreOffice tend to
> hang for a seconds or so, after typing each character, which is undesirable.
> This should be also visible in the next attachment.
> 
> I have tested with the latest LO 25.8 dev master from today:
> 
> Version: 25.8.0.0.alpha0+ (X86_64) / LibreOffice Community
> Build ID: dec9f7d5b2d72e83f4feb81bc8845bca506bbe20
> CPU threads: 12; OS: Linux 6.2; UI render: default; VCL: gtk3
> Locale: en-US (en_US.UTF-8); UI: en-US
> Calc: CL threaded


Steps to Reproduce:
1. Open attachment 199549
2. Type some text at the start of an Arabic script line on page 2
3. Note that Writer prints the "kashida array contains wrong data" warning
message

Actual Results:
Writer prints a "kashida array contains wrong data" warning message. Writer may
also crash.

Expected Results:
Writer should not corrupt this kashida position information. Writer should not
print this warning message, nor should it crash during editing.


Reproducible: Always


User Profile Reset: No

Additional Info:
Version: 25.8.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: dec9f7d5b2d72e83f4feb81bc8845bca506bbe20
CPU threads: 12; OS: Linux 6.2; UI render: default; VCL: gtk3
Locale: en-US (en_US.UTF-8); UI: en-US
Calc: CL threaded

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to