Bug 142998 - XUIConfigurationPersistence::reload fails with "com.sun.star.script.BasicIDE"
Summary: XUIConfigurationPersistence::reload fails with "com.sun.star.script.BasicIDE"
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: BASIC (show other bugs)
(earliest affected)
Inherited From OOo
Hardware: All All
: medium normal
Assignee: Not Assigned
Depends on:
Reported: 2021-06-23 07:01 UTC by Mike Kaganski
Modified: 2021-07-07 18:07 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:

List of accelerators subkeys in current master (21.47 KB, image/png)
2021-06-23 07:01 UTC, Mike Kaganski

Note You need to log in before you can comment on or make changes to this bug.
Description Mike Kaganski 2021-06-23 07:01:39 UTC
Created attachment 173097 [details]
List of accelerators subkeys in current master

Run this Basic macro:

  sub TestReload
    oMS = createUnoService("com.sun.star.ui.ModuleUIConfigurationManagerSupplier")
    oConfigManager = oMS.getUIConfigurationManager("com.sun.star.script.BasicIDE")
    oShortCutManager = oConfigManager.ShortCutManager
  end sub

It produces this error on 'oShortCutManager.reload':

> BASIC runtime error.
> An exception occurred 
> Type: com.sun.star.container.NoSuchElementException
> Message: com.sun.star.script.BasicIDE.

The impact is that e.g. this extension: http://myooo.ru/content/view/86/115/ - gives this error trying to configure itself.

It worked in OOo 2.4.3, but started to fail in OOo 3.1.1, where it had much more helpful message:

> Message: Configuration - Child Element 'com.sun.star.script.BasicIDE' not found in /org.openoffice.Office.Accelerators/SecondaryKeys/Modules.

And indeed the exception happens when XCUBasedAcceleratorConfiguration::reload tries to load secondary keys.

The mentioned registry key (/org.openoffice.Office.Accelerators/SecondaryKeys/Modules) does not contain the 'com.sun.star.script.BasicIDE' node, while /org.openoffice.Office.Accelerators/PrimaryKeys/Modules does. The latter also contains 'com.sun.star.sdb.DataSourceBrowser', 'com.sun.star.sdb.QueryDesign', 'com.sun.star.sdb.TableDataView', absent in the former; and the former contains 'com.sun.star.report.ReportDefinition', absent in the latter.

The task is to add the missing registry configuration elements, and check that the script works as intended.
Comment 1 Mike Kaganski 2021-06-23 07:29:36 UTC
Possibly related is https://git.libreoffice.org/core/+/e9e75d722d41ffa943fc19f668fa984b84c36a5c
Comment 2 Andreas Heinisch 2021-07-07 18:07:45 UTC
Confirmed in:

Version: (x64) / LibreOffice Community
Build ID: 0aea0cee58fe77a9058217dfdfc3d6a02b29ee2a
CPU threads: 6; OS: Windows 10.0 Build 19042; UI render: Skia/Raster; VCL: win
Locale: en-US (de_DE); UI: en-US
Calc: CL