aboutsummaryrefslogtreecommitdiff
path: root/go/weed
diff options
context:
space:
mode:
Diffstat (limited to 'go/weed')
-rw-r--r--go/weed/upload.go7
-rw-r--r--go/weed/volume.go2
2 files changed, 7 insertions, 2 deletions
diff --git a/go/weed/upload.go b/go/weed/upload.go
index a47551ddf..96b326a39 100644
--- a/go/weed/upload.go
+++ b/go/weed/upload.go
@@ -66,7 +66,12 @@ func upload(filename string, server string, fid string) (int, error) {
debug("Failed to open file:", filename)
return 0, err
}
- ret, e := operation.Upload("http://"+server+"/"+fid, path.Base(filename), fh)
+ fi, fiErr := fh.Stat()
+ if fiErr!=nil {
+ debug("Failed to stat file:", filename)
+ return 0, fiErr
+ }
+ ret, e := operation.Upload("http://"+server+"/"+fid+"?ts="+strconv.Itoa(int(fi.ModTime().Unix()) ), path.Base(filename), fh)
if e != nil {
return 0, e
}
diff --git a/go/weed/volume.go b/go/weed/volume.go
index 039212793..d6c0af123 100644
--- a/go/weed/volume.go
+++ b/go/weed/volume.go
@@ -149,7 +149,7 @@ func GetOrHeadHandler(w http.ResponseWriter, r *http.Request, isGetMethod bool)
w.Header().Set("Last-Modified", time.Unix(int64(n.LastModified), 0).UTC().Format(http.TimeFormat))
if r.Header.Get("If-Modified-Since") != "" {
if t, parseError := time.Parse(http.TimeFormat, r.Header.Get("If-Modified-Since")); parseError == nil {
- if t.Unix() <= int64(n.LastModified) {
+ if t.Unix() >= int64(n.LastModified) {
w.WriteHeader(http.StatusNotModified)
return
}