On Wed, Apr 30, 2008 at 12:19:51PM +0200, Jim Meyering wrote:
Unfortunately, the above no longer applies, due to upstream (gnulib)
changes to deal with non-srcdir (aka VPATH) builds. I updated libvirt
from gnulib just yesterday, and will again, later today.
Can you adapt your patch to make bzr work with the newer version?
I'll do it when you're done updating gnulib.
> }}' \
> - $(find ${*-*} -name Entries -print) /dev/null;
> + $(find ${*:-*} -name Entries -print) /dev/null;
Thanks for reporting that.
Note though that POSIX appears to require the behavior that bash exhibits,
so calling this a bashism doesn't seem right.
No. POSIX requires that ${*-*} should expand to * if $* is unset (and
not if it's null). $* is defined to expand to the positional parameters
starting from 1. The spec is not *entirely* clear, I'll give you that,
but considering $* to be unset (instead of just null) messes with my
sanity. At any rate, relying on bash's interpretation of the spec is a
text book example of a bashism, if you ask me.
but there is no such exemption for the ${parameter-word} syntax.
All
that to say that this looks more like an infelicity in dash, and since
Ubuntu relies on it, you may want to investigate further.
Well, if anyone insists on not changing something that only works with
bash to something that works with any shell (${*:-*} vs. ${*-*}) , but
also refuses to put /bin/bash explicitly as the interpreter is just
being pointlessly difficult, IMO.
However, back to vc-list-files, that awk-based code is so hard to
reach for me -- I avoid CVS, and when I do use it, I have cvsu in my
path -- that it is rarely tested.
Anyhow the use of "*" there is unnecessary, and in addition,
there was a subtle (but probably never problematic) quoting bug.
Here's the patch I've pushed to gnulib:
http://git.sv.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=173a9f0c48a16c3...
That patch will make the cvs case fail, too. It will prepend a ./ to all
path names which will screw with the comparison, AFAICS.
If you care about the CVS-oriented cases, there are two more patches.
Not really. :) It just popped up when I was trying to determine why my
bzr case was failing.
--
Soren Hansen |
Virtualisation specialist | Ubuntu Server Team
Canonical Ltd. |
http://www.ubuntu.com/