@ -8,8 +8,10 @@ import (
"bufio"
"bytes"
"context"
"fmt"
"io"
"math"
"runtime"
"strconv"
"strings"
@ -40,9 +42,14 @@ func CatFileBatchCheck(repoPath string) (WriteCloserError, *bufio.Reader, func()
<- closed
}
_ , filename , line , _ := runtime . Caller ( 2 )
filename = strings . TrimPrefix ( filename , callerPrefix )
go func ( ) {
stderr := strings . Builder { }
err := NewCommandContext ( ctx , "cat-file" , "--batch-check" ) . RunInDirFullPipeline ( repoPath , batchStdoutWriter , & stderr , batchStdinReader )
err := NewCommandContext ( ctx , "cat-file" , "--batch-check" ) .
SetDescription ( fmt . Sprintf ( "%s cat-file --batch-check [repo_path: %s] (%s:%d)" , GitExecutable , repoPath , filename , line ) ) .
RunInDirFullPipeline ( repoPath , batchStdoutWriter , & stderr , batchStdinReader )
if err != nil {
_ = batchStdoutWriter . CloseWithError ( ConcatenateError ( err , ( & stderr ) . String ( ) ) )
_ = batchStdinReader . CloseWithError ( ConcatenateError ( err , ( & stderr ) . String ( ) ) )
@ -76,9 +83,14 @@ func CatFileBatch(repoPath string) (WriteCloserError, *bufio.Reader, func()) {
<- closed
}
_ , filename , line , _ := runtime . Caller ( 2 )
filename = strings . TrimPrefix ( filename , callerPrefix )
go func ( ) {
stderr := strings . Builder { }
err := NewCommandContext ( ctx , "cat-file" , "--batch" ) . RunInDirFullPipeline ( repoPath , batchStdoutWriter , & stderr , batchStdinReader )
err := NewCommandContext ( ctx , "cat-file" , "--batch" ) .
SetDescription ( fmt . Sprintf ( "%s cat-file --batch [repo_path: %s] (%s:%d)" , GitExecutable , repoPath , filename , line ) ) .
RunInDirFullPipeline ( repoPath , batchStdoutWriter , & stderr , batchStdinReader )
if err != nil {
_ = batchStdoutWriter . CloseWithError ( ConcatenateError ( err , ( & stderr ) . String ( ) ) )
_ = batchStdinReader . CloseWithError ( ConcatenateError ( err , ( & stderr ) . String ( ) ) )
@ -292,3 +304,10 @@ func ParseTreeLine(rd *bufio.Reader, modeBuf, fnameBuf, shaBuf []byte) (mode, fn
sha = shaBuf
return
}
var callerPrefix string
func init ( ) {
_ , filename , _ , _ := runtime . Caller ( 0 )
callerPrefix = strings . TrimSuffix ( filename , "modules/git/batch_reader.go" )
}