• Bug#1110170: trixie-pu: package git/1:2.47.3-0+deb13u1 (5/7)

    From Adrian Bunk@21:1/5 to All on Thu Jul 31 02:30:01 2025
    [continued from previous message]

    + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
    +printf "%s\n" "no" >&6; } ;;
    +esac
    fi
    rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
    @@ -8367,8 +8742,8 @@
    # config.status only pays attention to the cache file if you give it
    # the --recheck option to rerun configure.
    #
    -# `ac_cv_env_foo' variables (set or unset) will be overridden when
    -# loading this file, other *unset* `ac_cv_foo' will be assigned the
    +# 'ac_cv_env_foo' variables (set or unset) will be overridden when
    +# loading this file, other *unset* 'ac_cv_foo' will be assigned the
    # following values.

    _ACEOF
    @@ -8398,14 +8773,14 @@
    (set) 2>&1 |
    case $as_nl`(ac_space=' '; set) 2>&1` in #(
    *${as_nl}ac_space=\ *)
    - # `set' does not quote correctly, so add quotes: double-quote
    + # 'set' does not quote correctly, so add quotes: double-quote
    # substitution turns \\\\ into \\, and sed turns \\ into \.
    sed -n \
    "s/'/'\\\\''/g;
    s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
    ;; #(
    *)
    - # `set' quotes correctly as required by POSIX, so do not add quotes.
    + # 'set' quotes correctly as required by POSIX, so do not add quotes.
    sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
    ;;
    esac |
    @@ -8469,9 +8844,7 @@
    t quote
    b any
    :quote
    -s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g
    -s/\[/\\&/g
    -s/\]/\\&/g
    +s/[][ `~#$^&*(){}\\|;'\''"<>?]/\\&/g
    s/\$/$$/g
    H
    :any
    @@ -8531,7 +8904,6 @@

    # Be more Bourne compatible
    DUALCASE=1; export DUALCASE # for MKS sh
    -as_nop=:
    if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
    then :
    emulate sh
    @@ -8540,12 +8912,13 @@
    # is contrary to our usage. Disable this feature.
    alias -g '${1+"$@"}'='"$@"'
    setopt NO_GLOB_SUBST
    -else $as_nop
    - case `(set -o) 2>/dev/null` in #(
    +else case e in #(
    + e) case `(set -o) 2>/dev/null` in #(
    *posix*) :
    set -o posix ;; #(
    *) :
    ;;
    +esac ;;
    esac
    fi

    @@ -8617,7 +8990,7 @@

    ;;
    esac
    -# We did not find ourselves, most probably we were run as `sh COMMAND'
    +# We did not find ourselves, most probably we were run as 'sh COMMAND'
    # in which case we are not to be found in the path.
    if test "x$as_myself" = x; then
    as_myself=$0
    @@ -8646,7 +9019,6 @@
    } # as_fn_error


    -
    # as_fn_set_status STATUS
    # -----------------------
    # Set $? to STATUS, without forking.
    @@ -8686,11 +9058,12 @@
    {
    eval $1+=\$2
    }'
    -else $as_nop
    - as_fn_append ()
    +else case e in #(
    + e) as_fn_append ()
    {
    eval $1=\$$1\$2
    - }
    + } ;;
    +esac
    fi # as_fn_append

    # as_fn_arith ARG...
    @@ -8704,11 +9077,12 @@
    {
    as_val=$(( $* ))
    }'
    -else $as_nop
    - as_fn_arith ()
    +else case e in #(
    + e) as_fn_arith ()
    {
    as_val=`expr "$@" || test $? -eq 1`
    - }
    + } ;;
    +esac
    fi # as_fn_arith


    @@ -8791,9 +9165,9 @@
    if ln -s conf$$.file conf$$ 2>/dev/null; then
    as_ln_s='ln -s'
    # ... but there are two gotchas:
    - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
    - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
    - # In both cases, we have to default to `cp -pR'.
    + # 1) On MSYS, both 'ln -s file dir' and 'ln file dir' fail.
    + # 2) DJGPP < 2.04 has no symlinks; 'ln -s' creates a wrapper executable.
    + # In both cases, we have to default to 'cp -pR'.
    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
    as_ln_s='cp -pR'
    elif ln conf$$.file conf$$ 2>/dev/null; then
    @@ -8874,10 +9248,12 @@
    as_executable_p=as_fn_executable_p

    # Sed expression to map a string onto a valid CPP name.
    -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
    +as_sed_cpp="y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" +as_tr_cpp="eval sed '$as_sed_cpp'" # deprecated

    # Sed expression to map a string onto a valid variable name.
    -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" +as_sed_sh="y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
    +as_tr_sh="eval sed '$as_sed_sh'" # deprecated


    exec 6>&1
    @@ -8892,8 +9268,8 @@
    # report actual input values of CONFIG_FILES etc. instead of their
    # values after options handling.
    ac_log="
    -This file was extended by git $as_me 2.47.2, which was
    -generated by GNU Autoconf 2.71. Invocation command line was
    +This file was extended by git $as_me 2.47.3, which was
    +generated by GNU Autoconf 2.72. Invocation command line was

    CONFIG_FILES = $CONFIG_FILES
    CONFIG_HEADERS = $CONFIG_HEADERS
    @@ -8921,7 +9297,7 @@

    cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
    ac_cs_usage="\
    -\`$as_me' instantiates files and other configuration actions
    +'$as_me' instantiates files and other configuration actions
    from templates according to the current configuration. Unless the files
    and actions are specified as TAGs, all are instantiated by default.

    @@ -8951,11 +9327,11 @@
    cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
    ac_cs_config='$ac_cs_config_escaped'
    ac_cs_version="\\
    -git config.status 2.47.2
    -configured by $0, generated by GNU Autoconf 2.71,
    +git config.status 2.47.3
    +configured by $0, generated by GNU Autoconf 2.72,
    with options \\"\$ac_cs_config\\"

    -Copyright (C) 2021 Free Software Foundation, Inc.
    +Copyright (C) 2023 Free Software Foundation, Inc.
    This config.status script is free software; the Free Software Foundation
    gives unlimited permission to copy, distribute and modify it."

    @@ -9012,8 +9388,8 @@
    ac_cs_silent=: ;;

    # This is an error.
    - -*) as_fn_error $? "unrecognized option: \`$1'
    -Try \`$0 --help' for more information." ;;
    + -*) as_fn_error $? "unrecognized option: '$1'
    +Try '$0 --help' for more information." ;;

    *) as_fn_append ac_config_targets " $1"
    ac_need_defaults=false ;;
    @@ -9070,7 +9446,7 @@
    "$config_file") CONFIG_COMMANDS="$CONFIG_COMMANDS $config_file" ;;
    ""${config_file}"") CONFIG_FILES="$CONFIG_FILES "${config_file}":"${config_in}"" ;;

    - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
    + *) as_fn_error $? "invalid argument: '$ac_config_target'" "$LINENO" 5;;
    esac
    done

    @@ -9089,7 +9465,7 @@
    # creating and moving files from /tmp can sometimes cause problems.
    # Hook for its removal unless debugging.
    # Note that there is a small window in which the directory will not be cleaned:
    -# after its creation but before its name has been assigned to `$tmp'.
    +# after its creation but before its name has been assigned to '$tmp'.
    $debug ||
    {
    tmp= ac_tmp=
    @@ -9113,7 +9489,7 @@

    # Set up the scripts for CONFIG_FILES section.
    # No need to generate them if there are no CONFIG_FILES.
    -# This happens for instance with `./config.status config.h'.
    +# This happens for instance with './config.status config.h'.
    if test -n "$CONFIG_FILES"; then


    @@ -9279,7 +9655,7 @@
    esac
    case $ac_mode$ac_tag in
    :[FHL]*:*);;
    - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
    + :L* | :C*:*) as_fn_error $? "invalid tag '$ac_tag'" "$LINENO" 5;;
    :[FH]-) ac_tag=-:-;;
    :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
    esac
    @@ -9301,19 +9677,19 @@
    -) ac_f="$ac_tmp/stdin";;
    *) # Look for the file first in the build tree, then in the source tree
    # (if the path is not absolute). The absolute path cannot be DOS-style,
    - # because $ac_f cannot contain `:'.
    + # because $ac_f cannot contain ':'.
    test -f "$ac_f" ||
    case $ac_f in
    [\\/$]*) false;;
    *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
    esac ||
    - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
    + as_fn_error 1 "cannot find input file: '$ac_f'" "$LINENO" 5;;
    esac
    case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
    as_fn_append ac_file_inputs " '$ac_f'"
    done

    - # Let's still pretend it is `configure' which instantiates (i.e., don't
    + # Let's still pretend it is 'configure' which instantiates (i.e., don't
    # use $as_me), people would be surprised to read:
    # /* config.h. Generated by config.status. */
    configure_input='Generated from '`
    @@ -9437,7 +9813,7 @@
    esac
    _ACEOF

    -# Neutralize VPATH when `$srcdir' = `.'.
    +# Neutralize VPATH when '$srcdir' = '.'.
    # Shell code in configure.ac might set extrasub.
    # FIXME: do we really want to maintain this feature?
    cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
    @@ -9466,9 +9842,9 @@
    { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
    { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
    "$ac_tmp/out"`; test -z "$ac_out"; } &&
    - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
    + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable 'datarootdir'
    which seems to be undefined. Please make sure it is defined" >&5
    -printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
    +printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable 'datarootdir'
    which seems to be undefined. Please make sure it is defined" >&2;}

    rm -f "$ac_tmp/stdin"
    diff -Nru git-2.47.2/contrib/credential/wincred/git-credential-wincred.c git-2.47.3/contrib/credential/wincred/git-credential-wincred.c
    --- git-2.47.2/contrib/credential/wincred/git-credential-wincred.c 2025-01-14 00:17:08.000000000 +0200
    +++ git-2.47.3/contrib/credential/wincred/git-credential-wincred.c 2025-06-14 01:20:03.000000000 +0300
    @@ -37,6 +37,14 @@
    static WCHAR *wusername, *password, *protocol, *host, *path, target[1024],
    *password_expiry_utc, *oauth_refresh_token;

    +static void target_append(const WCHAR *src)
    +{
    + size_t avail = ARRAY_SIZE(target) - wcslen(target) - 1; /* -1 for NUL */
    + if (avail < wcslen(src))
    + die("target buffer overflow");
    + wcsncat(target, src, avail);
    +}
    +
    static void write_item(const char *what, LPCWSTR wbuf, int wlen)
    {
    char *buf;
    @@ -328,17 +336,17 @@

    /* prepare 'target', the unique key for the credential */
    wcscpy(target, L"git:");
    - wcsncat(target, protocol, ARRAY_SIZE(target));
    - wcsncat(target, L"://", ARRAY_SIZE(target));
    + target_append(protocol);
    + target_append(L"://");
    if (wusername) {
    - wcsncat(target, wusername, ARRAY_SIZE(target));
    - wcsncat(target,