video: Explicitly disallow setting the parent of a window to itself

Doing so causes a cycle in the window hierarchy tree graph, which leads to infinite recursion when destroying the windows.

(cherry picked from commit ca9b7c8ea3)
This commit is contained in:
Frank Praznik
2025-06-18 09:21:09 -04:00
parent a96dc76831
commit 9d9845d063

View File

@@ -3661,6 +3661,10 @@ bool SDL_SetWindowParent(SDL_Window *window, SDL_Window *parent)
CHECK_WINDOW_NOT_POPUP(parent, false);
}
if (window == parent) {
return SDL_SetError("Cannot set the parent of a window to itself.");
}
if (!_this->SetWindowParent) {
return SDL_Unsupported();
}