]> git.immae.eu Git - github/fretlink/terraform-provider-statuscake.git/blobdiff - vendor/golang.org/x/sys/unix/xattr_bsd.go
Upgrade to 0.12
[github/fretlink/terraform-provider-statuscake.git] / vendor / golang.org / x / sys / unix / xattr_bsd.go
index 930499324ff71c16e7ffd0f767def8ac444a3311..30c1d71f4eddb192e9360af673306a66a62a1d41 100644 (file)
@@ -81,7 +81,10 @@ func Lgetxattr(link string, attr string, dest []byte) (sz int, err error) {
 // flags are unused on FreeBSD
 
 func Fsetxattr(fd int, attr string, data []byte, flags int) (err error) {
-       d := unsafe.Pointer(&data[0])
+       var d unsafe.Pointer
+       if len(data) > 0 {
+               d = unsafe.Pointer(&data[0])
+       }
        datasiz := len(data)
 
        nsid, a, err := xattrnamespace(attr)
@@ -94,7 +97,10 @@ func Fsetxattr(fd int, attr string, data []byte, flags int) (err error) {
 }
 
 func Setxattr(file string, attr string, data []byte, flags int) (err error) {
-       d := unsafe.Pointer(&data[0])
+       var d unsafe.Pointer
+       if len(data) > 0 {
+               d = unsafe.Pointer(&data[0])
+       }
        datasiz := len(data)
 
        nsid, a, err := xattrnamespace(attr)
@@ -107,7 +113,10 @@ func Setxattr(file string, attr string, data []byte, flags int) (err error) {
 }
 
 func Lsetxattr(link string, attr string, data []byte, flags int) (err error) {
-       d := unsafe.Pointer(&data[0])
+       var d unsafe.Pointer
+       if len(data) > 0 {
+               d = unsafe.Pointer(&data[0])
+       }
        datasiz := len(data)
 
        nsid, a, err := xattrnamespace(attr)