fix crash on window attach - triggered when attaching from the focused window
later unfocusing that window would die since it had no client. Now we make sure we remove all references from the fluxbox Window->FluxboxWindow list first
This commit is contained in:
parent
06de965f4b
commit
2fc279a5e2
1 changed files with 5 additions and 2 deletions
|
@ -22,7 +22,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: Window.cc,v 1.187 2003/05/26 04:24:24 rathnor Exp $
|
// $Id: Window.cc,v 1.188 2003/06/06 14:45:13 rathnor Exp $
|
||||||
|
|
||||||
#include "Window.hh"
|
#include "Window.hh"
|
||||||
|
|
||||||
|
@ -298,6 +298,9 @@ FluxboxWindow::~FluxboxWindow() {
|
||||||
XUngrabPointer(display, CurrentTime);
|
XUngrabPointer(display, CurrentTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// no longer a valid window to do stuff with
|
||||||
|
Fluxbox::instance()->removeWindowSearch(frame().window().window());
|
||||||
|
|
||||||
Client2ButtonMap::iterator it = m_labelbuttons.begin();
|
Client2ButtonMap::iterator it = m_labelbuttons.begin();
|
||||||
Client2ButtonMap::iterator it_end = m_labelbuttons.end();
|
Client2ButtonMap::iterator it_end = m_labelbuttons.end();
|
||||||
for (; it != it_end; ++it) {
|
for (; it != it_end; ++it) {
|
||||||
|
@ -321,7 +324,7 @@ FluxboxWindow::~FluxboxWindow() {
|
||||||
detachClient(*m_clientlist.back());
|
detachClient(*m_clientlist.back());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Fluxbox::instance()->removeWindowSearch(frame().window().window());
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
cerr<<__FILE__<<"("<<__LINE__<<"): ~FluxboxWindow("<<this<<")"<<endl;
|
cerr<<__FILE__<<"("<<__LINE__<<"): ~FluxboxWindow("<<this<<")"<<endl;
|
||||||
#endif // DEBUG
|
#endif // DEBUG
|
||||||
|
|
Loading…
Reference in a new issue