Commit Graph

3 Commits

Author SHA1 Message Date
Tobias Powalowski 0365edb264
fix: enable extglob before func definition for bash-5.2 compatibility
The `extglob` option changes the behavior of the shell parser, since
extended glob patterns would otherwise be syntax errors. bash-5.2
changed the way a function definition is processed by calling the parser
instead of relying on the ad-hoc code in bash-5.1 and earlier versions.
This means, in bash-5.2 the shell function was parsed without `extglob`
being enabled because the `shopt` command to enable it was part of the
function body.

Add `shopt` options for `extglob` around function definitions to address
this issue and allow bash-5.2 to correctly parse the function.

Co-authored-by: Frédéric Pierret (fepitre) <frederic.pierret@qubes-os.org>
Co-authored-by: Levente Polyak <anthraxx@archlinux.org>
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
2023-03-06 21:51:27 +01:00
Levente Polyak fcaf3ecec0
fix: do not set extglob globally to avoid side-effects
Instead only enable it for whatever operation requires them.

Example sides effects:
commitpkg can accidently execute PKGBUILD functions when sourcing the
PKGBUILD that has function names like package_libsigc++()

Fixes #87
2022-09-01 23:40:21 +02:00
Levente Polyak d94badcd0b
make: split out source files into src folder 2022-06-22 01:05:02 +02:00