Hello list
While testing the configuration update for the floating_window_layouter I encountered a problem.
Inside the signal handler for the config update the configuration is always "<empty/>".
In the log I see that layout_controller writes the report "layout_controller -> layouter_config" and that the layouter receives a signal. But after a config.update() the content of config.xml() is always empty.
<config> ... <default-route> <any-service> <parent/> <any-child/> </any-service> </default-route> ... <start name="report_rom"> <resource name="RAM" quantum="4M"/> <provides> <service name="Report"/> <service name="ROM"/> </provides> <config verbose="yes"> <policy label="layouter -> window_list" report="wm -> window_list"/> <policy label="layouter -> focus_request" report="wm -> focus_request"/> ... <policy label="layouter -> config" report="layout_controller -> layouter_config"/> </config> </start> ... <start name="layout_controller"> <resource name="RAM" quantum="4M"/> <route> <service name="Report" label="layouter_config"> <child name="report_rom"/> </service> <any-service> <parent/> <any-child/> </any-service> </route> </start> ... <start name="layouter"> <binary name="floating_window_layouter"/> <resource name="RAM" quantum="4M"/> <route> <service name="ROM" label="config"> <child name="report_rom"/> </service> <service name="ROM" label="decorator_margins"> <child name="report_rom"/> </service> <service name="ROM" label="focus_request"> <child name="report_rom"/> </service> <service name="ROM" label="hover"> <child name="report_rom"/> </service> <service name="ROM" label="window_list"> <child name="report_rom"/> </service> <service name="Report"> <child name="report_rom"/> </service> <any-service> <child name="wm"/> <parent/> <any-child/> </any-service> </route> </start> ... </config>
I also have tried to change the route and the policy as follows:
<service name="ROM" label="config"> <child name="report_rom" label="layouter_config"/> </service> <policy label="layouter -> layouter_config" report="layout_controller -> layouter_config"/>
But this also didn't help.
LOG:
[runtime -> wm -> layouter] config at startup: <empty/> [runtime -> wm -> report_rom] report 'layout_controller -> layouter_config' [runtime -> wm -> report_rom] <config> [runtime -> wm -> report_rom] ... [runtime -> wm -> report_rom] </config> [runtime -> wm -> layouter] config update signal [runtime -> wm -> layouter] new config: <empty/>
Does anybody see the error, that my colleague an I weren't able to find?
Best regards Pirmin
Hi Pirmin,
While testing the configuration update for the floating_window_layouter I encountered a problem.
Inside the signal handler for the config update the configuration is always "<empty/>".
In the log I see that layout_controller writes the report "layout_controller -> layouter_config" and that the layouter receives a signal. But after a config.update() the content of config.xml() is always empty.
just as a shot in the dark, could it possibly be that the "layout_controller" closes the report session right after submitting the report, e.g., by using a 'Reporter' as a local variable that is destructed when leaving its scope?
The report_rom server stores the reports using the session quota of the corresponding report client. If the client vanishes, the report vanishes too.
Cheers Norman