MCPcopy Create free account
hub / github.com/libgit2/git2go / smartSubtransportStreamReadCallback

Function smartSubtransportStreamReadCallback

transport.go:445–471  ·  view source on GitHub ↗

export smartSubtransportStreamReadCallback

(
	errorMessage **C.char,
	s *C.git_smart_subtransport_stream,
	buffer *C.char,
	bufSize C.size_t,
	bytesRead *C.size_t,
)

Source from the content-addressed store, hash-verified

443
444//export smartSubtransportStreamReadCallback
445func smartSubtransportStreamReadCallback(
446 errorMessage **C.char,
447 s *C.git_smart_subtransport_stream,
448 buffer *C.char,
449 bufSize C.size_t,
450 bytesRead *C.size_t,
451) C.int {
452 stream := getSmartSubtransportStreamInterface(s)
453
454 var p []byte
455 header := (*reflect.SliceHeader)(unsafe.Pointer(&p))
456 header.Cap = int(bufSize)
457 header.Len = int(bufSize)
458 header.Data = uintptr(unsafe.Pointer(buffer))
459
460 n, err := stream.underlying.Read(p)
461 *bytesRead = C.size_t(n)
462 if n == 0 && err != nil {
463 if err == io.EOF {
464 return C.int(ErrorCodeOK)
465 }
466
467 return setCallbackError(errorMessage, err)
468 }
469
470 return C.int(ErrorCodeOK)
471}
472
473//export smartSubtransportStreamWriteCallback
474func smartSubtransportStreamWriteCallback(

Calls 3

setCallbackErrorFunction · 0.85
ReadMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…