On Fri, Jun 16, 2023 at 04:51:38PM +0900, Kyotaro Horiguchi wrote:
> (Honestly, the rearrangement code looks somewhat tricky to grasp..)
Yeah, I think there's still some room for improvement here.
> It doesn't work properly if '--' is involved.
>
> For example, consider the following options (even though they don't
> work for the command).
>
> psql -t -T hoho -a hoge -- -1 hage hige huge
>
> After the function returns -1, the argv array looks like this. The
> "[..]" indicates the position of optind.
>
> psql -t -T hoho -a -- [-1] hage hige huge hoge
>
> This is clearly incorrect since "hoge" gets moved to the end. The
> rearrangement logic needs to take into account the '--'. For your
> information, the glibc version yields the following result for the
> same options.
>
> psql -t -T hoho -a -- [hoge] -1 hage hige huge
Ah, so it effectively retains the non-option ordering, even if there is a
'--'. I think this behavior is worth keeping. I attempted to fix this in
the attached patch.
--
Nathan Bossart
Amazon Web Services: https://aws.amazon.com