Fix: cannot disable ReadV

This commit is contained in:
秋のかえで 2021-08-07 18:26:28 +08:00
parent 1e3d739a5b
commit 17cdeac57f
No known key found for this signature in database
GPG Key ID: E343534293081E5D

View File

@ -4,7 +4,6 @@ package buf
import ( import (
"io" "io"
"runtime"
"syscall" "syscall"
"github.com/xtls/xray-core/common/platform" "github.com/xtls/xray-core/common/platform"
@ -134,17 +133,13 @@ func (r *ReadVReader) ReadMultiBuffer() (MultiBuffer, error) {
return mb, nil return mb, nil
} }
var useReadv = true var useReadv bool
func init() { func init() {
const defaultFlagValue = "NOT_DEFINED_AT_ALL" const defaultFlagValue = "NOT_DEFINED_AT_ALL"
value := platform.NewEnvFlag("xray.buf.readv").GetValue(func() string { return defaultFlagValue }) value := platform.NewEnvFlag("xray.buf.readv").GetValue(func() string { return defaultFlagValue })
switch value { switch value {
case defaultFlagValue, "auto": case defaultFlagValue, "auto", "enable":
if (runtime.GOARCH == "386" || runtime.GOARCH == "amd64" || runtime.GOARCH == "s390x") && (runtime.GOOS == "linux" || runtime.GOOS == "darwin" || runtime.GOOS == "windows") {
useReadv = true
}
case "enable":
useReadv = true useReadv = true
} }
} }