diff options
author | Sam Spilsbury <sam.spilsbury@canonical.com> | 2011-02-11 02:24:06 +0800 |
---|---|---|
committer | Sam Spilsbury <sam.spilsbury@canonical.com> | 2011-02-11 02:24:06 +0800 |
commit | 1358c4c6f431cc53d5dafb884ef5b5629006fea7 (patch) | |
tree | 13172ae9ff0e12a1ff07afd46a4646848edd835a | |
parent | 73499a21c1ec450eb70de8129185e0289f86d56f (diff) | |
download | compiz-with-glib-mainloop-1358c4c6f431cc53d5dafb884ef5b5629006fea7.tar.gz compiz-with-glib-mainloop-1358c4c6f431cc53d5dafb884ef5b5629006fea7.tar.bz2 |
Remove "semi-tracked" created windows on DestroyNotify.
Fixes LP: #709461
-rw-r--r-- | src/event.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/event.cpp b/src/event.cpp index 9eb2093..fd71fe6 100644 --- a/src/event.cpp +++ b/src/event.cpp @@ -1101,6 +1101,17 @@ CompScreen::handleEvent (XEvent *event) w->moveInputFocusToOtherWindow (); w->destroy (); } + else + { + foreach (CoreWindow *cw, priv->createdWindows) + { + if (cw->priv->id == event->xdestroywindow.window) + { + priv->createdWindows.remove (cw); + break; + } + } + } break; case MapNotify: |