Page MenuHomePhabricator

Enlightenment internal windows break
Open, HighPublic

Description

It looks like sometimes opening a new E internal window will cause an older one to resize so they're both the same size. At that point closing the newer window closes both, and internal windows won't work after that.

To reproduce, just open settings, then pick random other windows to pop up and close over and over until the wheels come off.

Unsure yet if this is E or EFl, but my guess is it's EFL.

ManMower created this task.Jun 21 2018, 1:50 PM
zmike removed a project: efl.Jun 22 2018, 2:26 PM
ManMower triaged this task as Showstopper Issues priority.Jul 5 2018, 10:58 AM
ManMower claimed this task.
ManMower edited projects, added efl: canvas; removed enlightenment-git.

Turns out this is a pretty big deal.

window ids generated by different evas engines (wayland_shm and drm in this case) are being put in the same hash table, so eventually there's a collision and things get stupid.

working on it now.

ManMower lowered the priority of this task from Showstopper Issues to High.Jul 6 2018, 8:12 AM

Still a delightful design flaw that needs to be fully resolved, but it should be impossible to hit this in the drm/gl_drm compositor now.

It could perhaps happen in wl_x11, with a very low probability.

I think ultimately the resolution is to make *everything* in ecore_input_evas.c's _window_hash should be a pointer? this would require some changes to all of the ecore_evas engines...

A problem for another release.