]> Cypherpunks.ru repositories - goredo.git/blobdiff - js.go
Pipes can fail at OS level, do not panic
[goredo.git] / js.go
diff --git a/js.go b/js.go
index 2efdd162e84a20160118a517366ad89212dd05b0..701d26d39683891c0a01762758f3ce63358f1cea 100644 (file)
--- a/js.go
+++ b/js.go
@@ -92,7 +92,7 @@ func jsInit() {
 
        JSR, JSW, err = os.Pipe()
        if err != nil {
-               panic(err)
+               log.Fatalln(err)
        }
        for i := uint64(0); i < jobs; i++ {
                jsRelease("initial fill")
@@ -101,7 +101,7 @@ func jsInit() {
 
 func jsReleaseNoLock() {
        if n, err := JSW.Write([]byte{0}); err != nil || n != 1 {
-               panic("can not write JSW")
+               log.Fatalln("can not write JSW:", err)
        }
 }
 
@@ -124,7 +124,7 @@ func jsAcquire(ctx string) {
        }
        trace(CJS, "acquire for %s", ctx)
        if n, err := JSR.Read([]byte{0}); err != nil || n != 1 {
-               panic("can not read JSR")
+               log.Fatalln("can not read JSR:", err)
        }
        jsTokensM.Lock()
        jsTokens++