Before commit c656c658 override-redirect windows was not registered with meta_display_register_x_window. This means that Metacity was treating WM_TRANSIENT_FOR hint as invalid if it was pointing to override-redirect window.
EWMH specification [1] says that WM_TRANSIENT_FOR property is defined for managed windows and extends its usage for override-redirect windows. Client should set WM_TRANSIENT_FOR on override-redirect window if it is child/popup for another window.
As specification does not say anyting about using override-redirect windows as parent for managed windows and because it causes crashes in Metacity ignore WM_TRANSIENT_FOR if it is pointing to override-redirect window.
[1] https://specifications.freedesktop.org/wm-spec/wm-spec-latest.html#idm46291029654544