// 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)
}
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)
}
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)