Merge lp:~gala-dev/gala/get-window-actors-crash into lp:gala

Proposed by Tom Beckmann
Status: Merged
Merged at revision: 325
Proposed branch: lp:~gala-dev/gala/get-window-actors-crash
Merge into: lp:gala
Diff against target: 41 lines (+9/-3)
2 files modified
src/Widgets/WindowSwitcher.vala (+5/-1)
src/Widgets/WorkspaceThumb.vala (+4/-2)
To merge this branch: bzr merge lp:~gala-dev/gala/get-window-actors-crash
Reviewer Review Type Date Requested Status
Rico Tzschichholz Approve
Review via email: mp+163393@code.launchpad.net

Description of the change

Some code to hopefully prevent the meta_get_window_actors crash.

To post a comment you must log in.
Revision history for this message
Rico Tzschichholz (ricotz) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/Widgets/WindowSwitcher.vala'
2--- src/Widgets/WindowSwitcher.vala 2013-04-28 09:30:41 +0000
3+++ src/Widgets/WindowSwitcher.vala 2013-05-11 13:14:27 +0000
4@@ -182,7 +182,11 @@
5 window_clones.clear ();
6
7 //need to go through all the windows because of hidden dialogs
8- foreach (var window in Meta.Compositor.get_window_actors (screen)) {
9+ unowned List<Meta.WindowActor>? window_actors = Meta.Compositor.get_window_actors (screen);
10+ warn_if_fail (window_actors != null);
11+ if (window_actors == null)
12+ return;
13+ foreach (var window in window_actors) {
14 if (window.get_workspace () == workspace.index ())
15 window.show ();
16 }
17
18=== modified file 'src/Widgets/WorkspaceThumb.vala'
19--- src/Widgets/WorkspaceThumb.vala 2013-03-29 17:45:46 +0000
20+++ src/Widgets/WorkspaceThumb.vala 2013-05-11 13:14:27 +0000
21@@ -332,8 +332,10 @@
22 void update_windows ()
23 {
24 windows.remove_all_children ();
25+ unowned List<WindowActor>? window_actors = Compositor.get_window_actors (screen);
26+ warn_if_fail (window_actors != null);
27
28- if (workspace == null)
29+ if (workspace == null || window_actors == null)
30 return;
31
32 int swidth, sheight;
33@@ -341,7 +343,7 @@
34
35 // add window thumbnails
36 var aspect = windows.width / swidth;
37- foreach (var window in Compositor.get_window_actors (screen)) {
38+ foreach (var window in window_actors) {
39 if (window == null)
40 continue;
41 var meta_window = window.get_meta_window ();

Subscribers

People subscribed via source and target branches