diff options
Diffstat (limited to 'src/pkg/os/dir_linux.go')
| -rw-r--r-- | src/pkg/os/dir_linux.go | 50 | 
1 files changed, 25 insertions, 25 deletions
| diff --git a/src/pkg/os/dir_linux.go b/src/pkg/os/dir_linux.go index 0e73fefd6..e693794f0 100644 --- a/src/pkg/os/dir_linux.go +++ b/src/pkg/os/dir_linux.go @@ -5,12 +5,12 @@  package os  import ( -	"syscall"; -	"unsafe"; +	"syscall" +	"unsafe"  )  const ( -	blockSize = 4096;	// TODO(r): use statfs +	blockSize = 4096 // TODO(r): use statfs  )  func clen(n []byte) int { @@ -19,59 +19,59 @@ func clen(n []byte) int {  			return i  		}  	} -	return len(n); +	return len(n)  }  func (file *File) Readdirnames(count int) (names []string, err Error) {  	// If this file has no dirinfo, create one.  	if file.dirinfo == nil { -		file.dirinfo = new(dirInfo); +		file.dirinfo = new(dirInfo)  		// The buffer must be at least a block long.  		// TODO(r): use fstatfs to find fs block size. -		file.dirinfo.buf = make([]byte, blockSize); +		file.dirinfo.buf = make([]byte, blockSize)  	} -	d := file.dirinfo; -	size := count; +	d := file.dirinfo +	size := count  	if size < 0 {  		size = 100  	} -	names = make([]string, 0, size);	// Empty with room to grow. +	names = make([]string, 0, size) // Empty with room to grow.  	for count != 0 {  		// Refill the buffer if necessary  		if d.bufp >= d.nbuf { -			var errno int; -			d.nbuf, errno = syscall.Getdents(file.fd, d.buf); +			var errno int +			d.nbuf, errno = syscall.Getdents(file.fd, d.buf)  			if errno != 0 {  				return names, NewSyscallError("getdents", errno)  			}  			if d.nbuf <= 0 { -				break	// EOF +				break // EOF  			} -			d.bufp = 0; +			d.bufp = 0  		}  		// Drain the buffer  		for count != 0 && d.bufp < d.nbuf { -			dirent := (*syscall.Dirent)(unsafe.Pointer(&d.buf[d.bufp])); -			d.bufp += int(dirent.Reclen); -			if dirent.Ino == 0 {	// File absent in directory. +			dirent := (*syscall.Dirent)(unsafe.Pointer(&d.buf[d.bufp])) +			d.bufp += int(dirent.Reclen) +			if dirent.Ino == 0 { // File absent in directory.  				continue  			} -			bytes := (*[len(dirent.Name)]byte)(unsafe.Pointer(&dirent.Name[0])); -			var name = string(bytes[0:clen(bytes)]); -			if name == "." || name == ".." {	// Useless names +			bytes := (*[len(dirent.Name)]byte)(unsafe.Pointer(&dirent.Name[0])) +			var name = string(bytes[0:clen(bytes)]) +			if name == "." || name == ".." { // Useless names  				continue  			} -			count--; +			count--  			if len(names) == cap(names) { -				nnames := make([]string, len(names), 2*len(names)); +				nnames := make([]string, len(names), 2*len(names))  				for i := 0; i < len(names); i++ {  					nnames[i] = names[i]  				} -				names = nnames; +				names = nnames  			} -			names = names[0 : len(names)+1]; -			names[len(names)-1] = name; +			names = names[0 : len(names)+1] +			names[len(names)-1] = name  		}  	} -	return names, nil; +	return names, nil  } | 
