improve compatibility with zsh as a non-interactive shell - sfeed - RSS and Atom parser
 (HTM) git clone git://git.codemadness.org/sfeed
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 63308527f5197ddbcad6b06c5c1bbaf12f997e57
 (DIR) parent da8adbc02e4667a68077e5f0cab8548e2bb81c1b
 (HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org>
       Date:   Sat,  9 Dec 2023 21:51:45 +0100
       
       improve compatibility with zsh as a non-interactive shell
       
       In zsh the variables $path and $status are special.
       
       https://zsh.sourceforge.io/Doc/Release/Parameters.html#index-path
       https://zsh.sourceforge.io/Doc/Release/Parameters.html#index-status
       
       (No promises I will keep up with this insanity in the future though)
       
       Diffstat:
         M README                              |       6 +++---
         M sfeed_opml_export                   |       8 ++++----
         M sfeed_update                        |      12 ++++++------
       
       3 files changed, 13 insertions(+), 13 deletions(-)
       ---
 (DIR) diff --git a/README b/README
       @@ -752,12 +752,12 @@ sfeed_update_xargs shellscript:
                mkdir -p "${sfeedpath}"
                # print feeds for parallel processing with xargs.
                feeds | SFEED_UPDATE_CHILD="1" xargs -r -0 -P "${maxjobs}" -L 6 "$(readlink -f "$0")"
       -        status=$?
       +        statuscode=$?
                # check error exit status indicator for parallel jobs.
       -        test -f "${sfeedtmpdir}/ok" || status=1
       +        test -f "${sfeedtmpdir}/ok" || statuscode=1
                # cleanup temporary files etc.
                cleanup
       -        exit ${status}
       +        exit ${statuscode}
        
        - - -
        
 (DIR) diff --git a/sfeed_opml_export b/sfeed_opml_export
       @@ -7,16 +7,16 @@ loadconfig() {
                if [ "$1" != "" ]; then
                        # get absolute path of config file required for including.
                        config="$1"
       -                path=$(readlink -f "${config}" 2>/dev/null)
       +                configpath=$(readlink -f "${config}" 2>/dev/null)
                else
                        # default config location.
                        config="$HOME/.sfeed/sfeedrc"
       -                path="${config}"
       +                configpath="${config}"
                fi
        
                # config is loaded here to be able to override $sfeedpath or functions.
       -        if [ -r "${path}" ]; then
       -                . "${path}"
       +        if [ -r "${configpath}" ]; then
       +                . "${configpath}"
                else
                        printf "Configuration file \"%s\" cannot be read.\n" "${config}" >&2
                        echo "See the sfeedrc.example file or the sfeedrc(5) man page for an example." >&2
 (DIR) diff --git a/sfeed_update b/sfeed_update
       @@ -16,16 +16,16 @@ loadconfig() {
                if [ "$1" != "" ]; then
                        # get absolute path of config file required for including.
                        config="$1"
       -                path=$(readlink -f "${config}" 2>/dev/null)
       +                configpath=$(readlink -f "${config}" 2>/dev/null)
                else
                        # default config location.
                        config="$HOME/.sfeed/sfeedrc"
       -                path="${config}"
       +                configpath="${config}"
                fi
        
                # config is loaded here to be able to override $sfeedpath or functions.
       -        if [ -r "${path}" ]; then
       -                . "${path}"
       +        if [ -r "${configpath}" ]; then
       +                . "${configpath}"
                else
                        printf "Configuration file \"%s\" cannot be read.\n" "${config}" >&2
                        echo "See the sfeedrc.example file or the sfeedrc(5) man page for an example." >&2
       @@ -214,12 +214,12 @@ main() {
                [ ${signo} -eq 0 ] && wait
                # check error exit status indicator for parallel jobs.
                [ -f "${sfeedtmpdir}/ok" ]
       -        status=$?
       +        statuscode=$?
                # cleanup temporary files etc.
                cleanup
                # on signal SIGINT and SIGTERM exit with signal number + 128.
                [ ${signo} -ne 0 ] && exit $((signo+128))
       -        exit ${status}
       +        exit ${statuscode}
        }
        
        [ "${SFEED_UPDATE_INCLUDE}" = "1" ] || main "$@"