diff options
| author | Ophestra <cat@gensokyo.uk> | 2025-11-12 23:12:38 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2025-11-12 23:16:13 +0900 |
| commit | f347d44c2281f507e3786aa498f634bfa4c92d84 (patch) | |
| tree | fe85b41d5f6a5e308b87585f46efd64f90221e2b /helper/args.go | |
| parent | b5630f6883c874d458d9ae3c666cfb7ae5e3121d (diff) | |
internal/helper: relocate from helper
This package is ugly and is pending removal only kept alive by xdg-dbus-proxy.
Its exported symbols are made available until v0.4.0 where it will be removed for #24.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'helper/args.go')
| -rw-r--r-- | helper/args.go | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/helper/args.go b/helper/args.go deleted file mode 100644 index 80cd3024..00000000 --- a/helper/args.go +++ /dev/null @@ -1,59 +0,0 @@ -package helper - -import ( - "bytes" - "io" - "syscall" -) - -type argsWt [][]byte - -func (a argsWt) WriteTo(w io.Writer) (int64, error) { - nt := 0 - for _, arg := range a { - n, err := w.Write(arg) - nt += n - - if err != nil { - return int64(nt), err - } - } - - return int64(nt), nil -} - -func (a argsWt) String() string { - return string( - bytes.TrimSuffix( - bytes.ReplaceAll( - bytes.Join(a, nil), - []byte{0}, []byte{' '}, - ), - []byte{' '}, - ), - ) -} - -// NewCheckedArgs returns a checked null-terminated argument writer for a copy of args. -func NewCheckedArgs(args ...string) (wt io.WriterTo, err error) { - a := make(argsWt, len(args)) - for i, arg := range args { - a[i], err = syscall.ByteSliceFromString(arg) - if err != nil { - return - } - } - wt = a - return -} - -// MustNewCheckedArgs returns a checked null-terminated argument writer for a copy of args. -// If s contains a NUL byte this function panics instead of returning an error. -func MustNewCheckedArgs(args ...string) io.WriterTo { - a, err := NewCheckedArgs(args...) - if err != nil { - panic(err.Error()) - } - - return a -} |
