[pacman-dev] [PATCH 1/4] makepkg: cleanup a few format string injections
Signed-off-by: Dave Reisner
With some simple math and printf formatting tokens, we can create the
whitespace necessary for this without the need for a loop and string
concatentation.
Signed-off-by: Dave Reisner
These are all cases where we're reading filenames -- any backslashes
are intentional and should not be interpreted.
Signed-off-by: Dave Reisner
These loops already maintain an independent loop counter, so cut out
the middle man. An extra fix is needed to continue supporting sparse
arrays which, while weird, are valid.
Signed-off-by: Dave Reisner
On 04/09/13 13:19, Dave Reisner wrote:
These loops already maintain an independent loop counter, so cut out the middle man. An extra fix is needed to continue supporting sparse arrays which, while weird, are valid.
Signed-off-by: Dave Reisner
--- If we don't care about supporting sparse arrays, I can simply drop the final hunk off of this patch and adjust the commit message. Keeping support was simple enough that I felt compelled to offer it. Note, however, that removing support then causes makepkg to fail in cryptic ways when it does encounter a sparse array, e.g.:
$ makepkg -g ... ==> Generating checksums for source files... md5sums=('SKIP' 'e99e9189aa2f6084ac28b8ddf605aeb8' 'fb37e34ea006c79be1c54cbb0f803414' ==> ERROR: Unable to find source file .
Would putting quotes around the outputted source file name clear this up? Note that the output of 'makepkg -g' is incorrect (but working - see below) in the case of sparse source arrays.
Aborting...
And if you're still lost, a sparse array could be constructed like this:
source=('git://anongit.freedesktop.org/systemd/systemd.git' 'initcpio-hook-udev' 'initcpio-install-udev') source[5]='initcpio-install-systemd' md5sums=('SKIP' 'e99e9189aa2f6084ac28b8ddf605aeb8' 'fb37e34ea006c79be1c54cbb0f803414') md5sums[5]='fbea6190413f5e54a4d0784ca4a340e4'
This is perhaps a contrived example, but it's valid, and today's makepkg handles it just fine.
Also, this currently works with the above source array... md5sums=('SKIP' 'e99e9189aa2f6084ac28b8ddf605aeb8' 'fb37e34ea006c79be1c54cbb0f803414' 'fbea6190413f5e54a4d0784ca4a340e4') Which I am guess is not supported after this patch. I am in favour of dropping support for sparse source arrays and just clarifying the output when an empty source entry is present. That could just be added in check_sanity. A
participants (2)
-
Allan McRae
-
Dave Reisner