소스 검색

Refuse to store objects that are already here.

default 4 년 전
부모
커밋
1941d00650
1개의 변경된 파일과 6개의 추가작업 그리고 0개의 파일을 삭제
  1. 6 0
      data.c

+ 6 - 0
data.c

@@ -388,6 +388,12 @@ int object_add(const char *id, d_char *obj)
     xs *fn     = _object_fn(id);
     FILE *f;
 
+    if (mtime(fn) > 0.0) {
+        /* object already here */
+        srv_debug(0, xs_fmt("object_add object already here %s", id));
+        return 204; /* No content */
+    }
+
     if ((f = fopen(fn, "w")) != NULL) {
         flock(fileno(f), LOCK_EX);