Bug 111076 - FontMRUEntriesFile can't be accessed, causing LibO to bootstrap when opening a new document or entering a textbox
Summary: FontMRUEntriesFile can't be accessed, causing LibO to bootstrap when opening ...
Status: RESOLVED NOTABUG
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
4.1.0.4 release
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: Too-Much-File-Access
  Show dependency treegraph
 
Reported: 2017-08-02 09:18 UTC by Telesto
Modified: 2017-11-20 15:59 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:


Attachments
Example file (8.77 KB, application/vnd.oasis.opendocument.text)
2017-08-02 09:19 UTC, Telesto
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Telesto 2017-08-02 09:18:59 UTC
Description:
LibO is bootstrapping when selecting/entering a textbox. It doesn't seem desirable to me.

Steps to Reproduce:
1. Open the attached file
2. Enter the Textbox containing demo (clearing all sorts of fuzz)
2. Open Process Monitor with Filter set to Process Name is soffice.bin (and capture enabled)
3. Enter the textbox by double clicking
4. Stop the capture and scroll through the results


Actual Results:  
boostrap.ini is loaded twice

Expected Results:
Bootstrap shouldn't be needed at all (I suppose)


Reproducible: Always

User Profile Reset: No

Additional Info:
Found in
Version: 6.0.0.0.alpha0+
Build ID: 18f80da7a689ab962735c0f657497b8f1ed4d606
CPU threads: 4; OS: Windows 6.19; UI render: default; 
TinderBox: Win-x86@42, Branch:master, Time: 2017-07-28_05:15:48
Locale: nl-NL (nl_NL); Calc: CL

and in 5.4.0.3

Partial Stack of bootstrap.ini
sal3.dll	osl_getDirectoryItem + 0x227
sal3.dll	rtl_bootstrap_args_open + 0x6d
sal3.dll	rtl_reallocateMemory + 0x47ca
sal3.dll	rtl_bootstrap_expandMacros + 0x1a
svtlo.dll	FontNameBox::InitFontMRUEntriesFile + 0x51
svtlo.dll	FontNameBox::FontNameBox + 0xd2
svxcorelo.dll	SvxCurrencyToolBoxControl::SvxCurrencyToolBoxControl + 0x162
svxcorelo.dll	PaletteManager::SetPalette + 0x5946
svxcorelo.dll	SvxColorListBox::createColorWindow + 0x2ae
fwklo.dll	com_sun_star_comp_framework_ThesaurusMenuController_get_implementation + 0x9eca
fwklo.dll	com_sun_star_comp_framework_ThesaurusMenuController_get_implementation + 0xb4f3
fwklo.dll	com_sun_star_comp_framework_ThesaurusMenuController_get_implementation + 0x14c91
fwklo.dll	com_sun_star_comp_framework_AddonsToolBarFactory_get_implementation + 0x4f98
fwklo.dll	com_sun_star_comp_framework_StatusBarFactory_get_implementation + 0x24e
fwklo.dll	com_sun_star_comp_framework_ToolBarControllerFactory_get_implementation + 0x118b
fwklo.dll	Point::Y + 0x24ef
fwklo.dll	Point::Y + 0xe238
fwklo.dll	Point::Point + 0xab9f
sfxlo.dll	SfxDockingWindow::SetDockingRects + 0xb33
sfxlo.dll	SfxDockingWindow::SetDockingRects + 0xcd5
sfxlo.dll	SfxBindings::NextJob_Impl + 0x6e
sfxlo.dll	SfxBindings::LinkStubNextJob + 0xe
vcllo.dll	Timer::Invoke + 0xd



User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
Comment 1 Telesto 2017-08-02 09:19:15 UTC
Created attachment 135063 [details]
Example file
Comment 2 Telesto 2017-09-28 12:30:06 UTC
Also found in:
Versie: 4.1.0.4 
Build ID: 89ea49ddacd9aa532507cbf852f2bb22b1ace28
Comment 4 Telesto 2017-11-20 09:08:39 UTC
@Caolan
Any idea about this one? It looks like a inaccessible FONTNAMEBOXMRUENTRIESFILE, which based at the code should be stored at "/user/config/fontnameboxmruentries" (https://opengrok.libreoffice.org/xref/core/svtools/source/control/ctrlbox.cxx?r=4efae8d0#59)
Comment 5 Caolán McNamara 2017-11-20 13:19:19 UTC
Its the must recently used entries for the font name dropdown. Its not written until there have been some entries used from that font name dropdown, once the user has picked something then they are written on destruction of the fontname dropdown.

So that its not there yet isn't a bug, and that the location for the file is determined by reading the bootstrap file to find the location of the user install is ok too. FWIW its not bootstrapping anything, just reading the bootstrap config file.
Comment 6 Telesto 2017-11-20 15:59:51 UTC
@Caolán
Thanks for the answer, and sorry for the noise.