From d6a530995a1ad130fd1d249b08ce0a5d5b566d23 Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sun, 10 Aug 2025 05:09:27 +0800 Subject: [PATCH] http upload pack: Don't mix stderr to stdout --- forged/internal/unsorted/http_handle_repo_upload_pack.go | 7 ++++++- diff --git a/forged/internal/unsorted/http_handle_repo_upload_pack.go b/forged/internal/unsorted/http_handle_repo_upload_pack.go index df8bef4ddddd66ca97852fe21a7f8af5fca73b41..02a09c57c7749f0542672e25ba3edb429564394c 100644 --- a/forged/internal/unsorted/http_handle_repo_upload_pack.go +++ b/forged/internal/unsorted/http_handle_repo_upload_pack.go @@ -4,7 +4,9 @@ package unsorted import ( + "bytes" "io" + "log" "net/http" "os" "os/exec" @@ -71,10 +73,12 @@ cmd.Env = append(os.Environ(), "LINDENII_FORGE_HOOKS_SOCKET_PATH="+s.config.Hooks.Socket) if stdout, err = cmd.StdoutPipe(); err != nil { return err } - cmd.Stderr = cmd.Stdout defer func() { _ = stdout.Close() }() + + var stderrBuf bytes.Buffer + cmd.Stderr = &stderrBuf if stdin, err = cmd.StdinPipe(); err != nil { return err @@ -100,6 +104,7 @@ return err } if err = cmd.Wait(); err != nil { + log.Println(stderrBuf.String()) return err } -- 2.48.1