pgsql: Simplify coding around path_contains_parent_reference().

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Simplify coding around path_contains_parent_reference().
Date: 2022-01-31 18:53:46
Message-ID: E1nEboA-0005Ha-6z@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Simplify coding around path_contains_parent_reference().

Given the existing stipulation that path_contains_parent_reference()
must only be invoked on canonicalized paths, we can simplify things
in the wake of commit c10f830c5. It is now only possible to see
".." at the start of a relative path. That means we can simplify
path_contains_parent_reference() itself quite a bit, and it makes
the two existing outside call sites dead code, since they'd already
checked that the path is absolute.

We could now fold path_contains_parent_reference() into its only
remaining caller path_is_relative_and_below_cwd(). But it seems
better to leave it as a separately callable function, in case any
extensions are using it.

Also document the pre-existing requirement for
path_is_relative_and_below_cwd's input to be likewise canonicalized.

Shenhao Wang and Tom Lane

Discussion: https://postgr.es/m/OSBPR01MB4214FA221FFE046F11F2AD74F2D49@OSBPR01MB4214.jpnprd01.prod.outlook.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/b426bd48ee3f5a6890038421f81df7ed919d73dc

Modified Files
--------------
contrib/adminpack/adminpack.c | 6 ------
src/backend/utils/adt/genfile.c | 6 ------
src/port/path.c | 31 +++++++++++++------------------
3 files changed, 13 insertions(+), 30 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2022-01-31 20:08:06 pgsql: Revert "plperl: Fix breakage of c89f409749c in back branches."
Previous Message Tom Lane 2022-01-31 17:05:43 pgsql: Make canonicalize_path() more canonical.