summaryrefslogtreecommitdiff
path: root/libgo/go/os/error_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/os/error_test.go')
-rw-r--r--libgo/go/os/error_test.go24
1 files changed, 24 insertions, 0 deletions
diff --git a/libgo/go/os/error_test.go b/libgo/go/os/error_test.go
index 054bb3fcbcc0..02ed2351c5c0 100644
--- a/libgo/go/os/error_test.go
+++ b/libgo/go/os/error_test.go
@@ -106,3 +106,27 @@ func TestIsExist(t *testing.T) {
}
}
}
+
+func TestErrPathNUL(t *testing.T) {
+ f, err := ioutil.TempFile("", "_Go_ErrPathNUL\x00")
+ if err == nil {
+ f.Close()
+ t.Fatal("TempFile should have failed")
+ }
+ f, err = ioutil.TempFile("", "_Go_ErrPathNUL")
+ if err != nil {
+ t.Fatalf("open ErrPathNUL tempfile: %s", err)
+ }
+ defer os.Remove(f.Name())
+ defer f.Close()
+ f2, err := os.OpenFile(f.Name(), os.O_RDWR, 0600)
+ if err != nil {
+ t.Fatalf("open ErrPathNUL: %s", err)
+ }
+ f2.Close()
+ f2, err = os.OpenFile(f.Name()+"\x00", os.O_RDWR, 0600)
+ if err == nil {
+ f2.Close()
+ t.Fatal("Open should have failed")
+ }
+}