aboutsummaryrefslogtreecommitdiff
path: root/libgo/go/syscall/syscall_aix.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/syscall/syscall_aix.go')
-rw-r--r--libgo/go/syscall/syscall_aix.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/libgo/go/syscall/syscall_aix.go b/libgo/go/syscall/syscall_aix.go
index 231ff40..f4cac01 100644
--- a/libgo/go/syscall/syscall_aix.go
+++ b/libgo/go/syscall/syscall_aix.go
@@ -23,5 +23,9 @@ func direntReclen(buf []byte) (uint64, bool) {
}
func direntNamlen(buf []byte) (uint64, bool) {
- return readInt(buf, unsafe.Offsetof(Dirent{}.Namlen), unsafe.Sizeof(Dirent{}.Namlen))
+ reclen, ok := direntReclen(buf)
+ if !ok {
+ return 0, false
+ }
+ return reclen - uint64(unsafe.Offsetof(Dirent{}.Name)), true
}