Description: While AutoCorrect is set to Apply Styles while Typing, and the last line of the file ends with a colon, pressing <Enter> after that colon will cause Writer to crash. (Assuming a Style will be applied to the line with the colon, but it always crashes if that line is the only one in the file.) Steps to Reproduce: 1.In a new odt file (easier this way) 2.Make sure the AutoCorrect while Typing is set to "Apply Styles" 3.Type "a:" (without the quotes) on the only line of the file 4.Press <enter> Actual Results: Writer crashes. Expected Results: Some Header Style should be applied to the line of text. Reproducible: Always User Profile Reset: No Additional Info: Version: 6.4.6.2 (x64) Build ID: 0ce51a4fd21bff07a5c061082cc82c5ed232f115 CPU threads: 4; OS: Windows 6.1 Service Pack 1 Build 7601; UI render: default; VCL: win; Locale: en-CA (en_CA); UI-Language: en-US Calc: threaded but same problem with another computer with Version: 6.3.5.2 (x64) (Build ID not copied here, sorry!) CPU threads: 8; OS: Windows 10.0; UI render: GL; VCL: win; Locale: fr-CA (en_CA); UI-Language en-US Calc: CL
It does Version: 7.1.0.0.alpha0+ (x64) Build ID: ed4f610f4a3de12016f8308a17b6ad4f86e9d67a CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: Skia/Raster; VCL: win Locale: nl-NL (nl_NL); UI: en-US Calc: CL working fine in Version: 6.0.6.0.0+ Build ID: c30963b8b4bbbe42a24b97aafa161eff9d7ccdd4 CPU threads: 4; OS: Windows 6.3; UI render: default; Locale: nl-NL (nl_NL); Calc: CL
Created attachment 165444 [details] bt with debug symbols On pc Debian x86-64 with master sources updated today, I could reproduce this.
Bibisected using bibisect-win32-6.3 to: URL: https://cgit.freedesktop.org/libreoffice/core/commit/?id=eb92dc08f2abf5ed088da0d736266f213adf00de author: Michael Stahl <Michael.Stahl@cib.de> committer: Michael Stahl <Michael.Stahl@cib.de> summary: sw_redlinehide_4a: SwAutoFormat iterates frames, not nodes Adding CC: Michael Stahl
#0 std::__uniq_ptr_impl<sw::MergedPara, std::default_delete<sw::MergedPara> >::_M_ptr() const (this=0x170) at /usr/include/c++/9/bits/unique_ptr.h:154 #1 0x00007fffbd98c8e0 in std::unique_ptr<sw::MergedPara, std::default_delete<sw::MergedPara> >::get() const (this=0x170) at /usr/include/c++/9/bits/unique_ptr.h:361 #2 0x00007fffbd989f34 in SwTextFrame::GetMergedPara() const (this=0x0) at sw/source/core/inc/txtfrm.hxx:442 #3 0x00007fffbe330020 in SwTextFrame::GetTextNodeForParaProps() const (this=0x0) at sw/source/core/text/txtfrm.cxx:1297 #4 0x00007fffbdf2dd3a in SwAutoFormat::BuildHeadLine(unsigned short) (this=0x7fffffffbfe0, nLvl=2) at sw/source/core/edit/autofmt.cxx:1904 #5 0x00007fffbdf30b98 in SwAutoFormat::SwAutoFormat(SwEditShell*, SvxSwAutoFormatFlags const&, SwNodeIndex const*, SwNodeIndex const*) (this=0x7fffffffbfe0, pEdShell= 0x55555a341a30, rFlags=..., pSttNd=0x555556577de8, pEndNd=0x555556577da0) at sw/source/core/edit/autofmt.cxx:2520 The purpose of the : at the end seems to indicate that this should become a header3 paragraph style - gleaned from autofmt.cxx:2520. A proposed fix is at http://gerrit.libreoffice.org/c/core/+/109413
Justin Luth committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/fea7b531a4c9e8326a644cccc26325b16585675a tdf#136704 sw autofmt: prevent crash if no nextNode It will be available in 7.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.
Justin Luth committed a patch related to this issue. It has been pushed to "libreoffice-7-1": https://git.libreoffice.org/core/commit/4ef34f805c5682594a76802fff98889bd6052c3c tdf#136704 sw autofmt: prevent crash if no nextNode It will be available in 7.1.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.
Justin Luth committed a patch related to this issue. It has been pushed to "libreoffice-7-0": https://git.libreoffice.org/core/commit/008dc7a128c1f49093eefadc83c125c3c6b1bb00 tdf#136704 sw autofmt: prevent crash if no nextNode It will be available in 7.0.5. 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.
Verified in Version: 7.2.0.0.alpha0+ / LibreOffice Community Build ID: 4e1294b7d6f8de981147f15d4ca1b4e4853249eb CPU threads: 4; OS: Linux 5.7; UI render: default; VCL: gtk3 Locale: en-US (en_US.UTF-8); UI: en-US Calc: threaded @Justin Luth, thanks for fixing this issue!!
Xisco Fauli committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/d104d8048045af049502f694c2af8fa8f131f1b9 tdf#136704: sw_uiwriter2: Add unittest It will be available in 7.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.
Justin Luth committed a patch related to this issue. It has been pushed to "libreoffice-7-1-0": https://git.libreoffice.org/core/commit/41bf539dfdec3640c8a03af0594ce1ff3846feab tdf#136704 sw autofmt: prevent crash if no nextNode It will be available in 7.1.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.