Only change rLimit on OSX (where it is needed). Fixed #194
authorspf13 <steve.francia@gmail.com>
Thu, 6 Feb 2014 05:12:05 +0000 (00:12 -0500)
committerspf13 <steve.francia@gmail.com>
Thu, 6 Feb 2014 05:12:05 +0000 (00:12 -0500)
commands/hugo.go

index c2d8af23d72a5698d6342bdd55127d6db2316dab..ef5477fe0fcda6d3d8fb7f9e3c110eb5a9b727fb 100644 (file)
@@ -23,6 +23,7 @@ import (
     "github.com/spf13/nitro"
     "os"
     "path/filepath"
+    "runtime"
     "strings"
     "sync"
     "syscall"
@@ -156,17 +157,19 @@ func buildSite(watching ...bool) (err error) {
 }
 
 func NewWatcher(port int) error {
-    var rLimit syscall.Rlimit
-    err := syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimit)
-    if err != nil {
-        fmt.Println("Error Getting Rlimit ", err)
-    }
-    if rLimit.Cur < rLimit.Max {
-        rLimit.Max = 999999
-        rLimit.Cur = 999999
-        err = syscall.Setrlimit(syscall.RLIMIT_NOFILE, &rLimit)
+    if runtime.GOOS == "darwin" {
+        var rLimit syscall.Rlimit
+        err := syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimit)
         if err != nil {
-            fmt.Println("Error Setting rLimit ", err)
+            fmt.Println("Unable to obtain rLimit", err)
+        }
+        if rLimit.Cur < rLimit.Max {
+            rLimit.Max = 999999
+            rLimit.Cur = 999999
+            err = syscall.Setrlimit(syscall.RLIMIT_NOFILE, &rLimit)
+            if err != nil {
+                fmt.Println("Unable to increase number of open files limit", err)
+            }
         }
     }