| //see if it's directory | //see if it's directory | ||||
| info, e := f.Stat() | info, e := f.Stat() | ||||
| if e != nil || info.IsDir() { | |||||
| if e != nil { | |||||
| if handledBy404Handler(handler404, w, r) { | if handledBy404Handler(handler404, w, r) { | ||||
| return | return | ||||
| } | } | ||||
| } | } | ||||
| if info.IsDir() { | |||||
| //do we have index.html? | |||||
| f, err := root.Open(upath + "/index.html") | |||||
| if err != nil { | |||||
| //no we don't | |||||
| if handledBy404Handler(handler404, w, r) { | |||||
| return | |||||
| } | |||||
| } else { | |||||
| f.Close() | |||||
| } | |||||
| } | |||||
| // default serve | // default serve | ||||
| fs.ServeHTTP(w, r) | fs.ServeHTTP(w, r) | ||||
| }) | }) |