Description: LibreOffice always assert when I try to open default page style dialog, either by double clicking style name "Default style" from the status bar, or right button menu - edit when selecting "Default style" from the page style tab of sidebar. I've tested in Calc and Writer, but didn't test styles other than "Default style". Assertion failed: mhDefFont, file C:/cygwin/home/hungl/lode/dev/core/vcl/win/gdi/salfont.cxx, line 866 Assertion failed: GetChildCount() == 2 || pWindowImpl->mbInDispose, file C:/cygwin/home/hungl/lode/dev/core/vcl/source/window/layout.cx x, line 1513 Steps to Reproduce: 1. Open Writer or Calc. 2. Double click "Default Style" on the status bar. Actual Results: Assertion dialog pops up. Expected Results: Page style dialog pops up. Reproducible: Always User Profile Reset: No Additional Info: Version: 7.3.0.0.alpha0+ (x64) / LibreOffice Community Build ID: 5bc3cc695d58848d937910bf6344af1fa6f71725 CPU threads: 16; OS: Windows 10.0 Build 19042; UI render: Skia/Vulkan; VCL: win Locale: zh-TW (zh_TW); UI: en-US Calc: CL
Created attachment 175301 [details] Backtrace copied from VS
See also https://gerrit.libreoffice.org/c/core/+/122726
The Gerrit patch fixes the assert for me and it doesn't crash anymore. After reviewing the Windows font handling code, I'm wondering, why the assert wasn't triggered before. The attached bt doesn't have any assert. Is that one after applying the Gerrit patch for you? Do you see any other problems?
Jan-Marek Glogowski committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/3476106890ea2a00e6f949c918f6c05e17c66a36 tdf#144754 WIN de-assert ReleaseFonts / setFont It will be available in 7.3.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.
(In reply to Jan-Marek Glogowski from comment #3) > The Gerrit patch fixes the assert for me and it doesn't crash anymore. > > After reviewing the Windows font handling code, I'm wondering, why the > assert wasn't triggered before. > > The attached bt doesn't have any assert. Is that one after applying the > Gerrit patch for you? Do you see any other problems? That's before applying the patch. vcllo.dll!VclFrame::get_child() Line 1513 at C:\cygwin\home\hungl\lode\dev\core\vcl\source\window\layout.cxx(1513) is assert(GetChildCount() == 2 || pWindowImpl->mbInDispose);
Created attachment 175313 [details] backtrace with full path
(In reply to Commit Notification from comment #4) > Jan-Marek Glogowski committed a patch related to this issue. > It has been pushed to "master": > > https://git.libreoffice.org/core/commit/ > 3476106890ea2a00e6f949c918f6c05e17c66a36 > > tdf#144754 WIN de-assert ReleaseFonts / setFont > > It will be available in 7.3.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. I just cherrypicked the commit to my local branch, the issue does not reproduce now.
As from comment 7.