(svn r7635) -Fix (r7618, r7621): Guard against recursive deletion. It is possible that when a
parent window is deleted it deletes its child (always) and in turn, through some code the child initiates the deletion of the parent which, if not guarded against, deletes the child and so on...
This commit is contained in:
@@ -1226,7 +1226,10 @@ static void QueryWndProc(Window *w, WindowEvent *e)
|
||||
break;
|
||||
|
||||
case WE_DESTROY: /* Call callback function (if any) on window close if not yet called */
|
||||
if (!q->calledback && q->proc != NULL) q->proc(w->parent, false);
|
||||
if (!q->calledback && q->proc != NULL) {
|
||||
q->calledback = true;
|
||||
q->proc(w->parent, false);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user