Просмотр исходного кода

unix: use bytes.IndexByte instead of a for loop

Change-Id: I43bf3a7eafbf06b20a589ee339dae394bfea0bf6
Reviewed-on: https://go-review.googlesource.com/99515
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Tobias Klauser 7 лет назад
Родитель
Сommit
e64a828a1b
1 измененных файлов с 5 добавлено и 5 удалено
  1. 5 5
      unix/syscall_unix.go

+ 5 - 5
unix/syscall_unix.go

@@ -7,6 +7,7 @@
 package unix
 
 import (
+	"bytes"
 	"runtime"
 	"sync"
 	"syscall"
@@ -52,12 +53,11 @@ func errnoErr(e syscall.Errno) error {
 
 // clen returns the index of the first NULL byte in n or len(n) if n contains no NULL byte.
 func clen(n []byte) int {
-	for i := 0; i < len(n); i++ {
-		if n[i] == 0 {
-			return i
-		}
+	i := bytes.IndexByte(n, 0)
+	if i == -1 {
+		i = len(n)
 	}
-	return len(n)
+	return i
 }
 
 // Mmap manager, for use by operating system-specific implementations.