Fix incorrect logic for determining safe WindowAgg run conditions
The logic added in
9d9c02ccd to determine when a qual can be used as a
WindowClause run condition failed to correctly check for subqueries in the
qual. This was being done correctly for normal subquery qual pushdowns,
it's just that
9d9c02ccd failed to follow the lead on that.
This also fixes various other cases where transforming the qual into a
WindowClause run condition in the subquery should have been disallowed.
Bug: #17826
Reported-by: Anban Company
Discussion: https://postgr.es/m/17826-
7d8750952f19a5f5@postgresql.org
Backpatch-through: 15, where
9d9c02ccd was introduced.