opengl module reloading yields to no visible window
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Compiz |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Hello,
In our latest configuration (I'll get to this below), on entering ccsm and enabling or disabling a plugin (whatever the plugin), when compiz applies the changes, all windows disappear, and do not reapper again, only the desktop image remains.
On more investigation by disabling most plugins, I found that this seems to get triggered by the unload/reload of the opengl plugin.
It happens that it always triggers in our case because we pre-set the plugin list thanks to a configuration file pre-installed on the system, in an order which is correct for plugin dependencies, but which is not the order that compiz computes. It means that when compiz applies e.g. the enabling of a module, the new ordered list of plugins it computes has an order very different from the one of the pre-set plugin list, and thus compiz unloads/reloads basically all modules, including opengl, and triggers the bug.
It also happens that this order of plugins seems to be depending on the systems, so we can not even use the order as computed on a given system for another system, there'll be differences when moving to the other system, and opengl will get unloaded/reloaded, triggering the bug.
So there seems to be an underlying issue with opengl which could be worth investigating, but I'd say that it's not really a good thing for compiz to load plugins in an undefined order: that could lead to bugs triggered on a system, and not triggered on another system, just because of the load order and e.g. missing dependencies or such. To reduce such kind of divergence, I'd say compiz should have a stable plugin load order, only modified in a stable manner to respect dependencies. I will push a merge request doing this.
Samuel
Related branches
- Marco Trevisan (Treviño): Approve
-
Diff: 29 lines (+12/-0)1 file modifiedcompizconfig/libcompizconfig/src/main.c (+12/-0)
Compiz 0.9.14.0 was released today, which includes this fix.