fix 1866 -- stats instead of warning
authorChristian Grothoff <christian@grothoff.org>
Thu, 3 Nov 2011 13:24:10 +0000 (13:24 +0000)
committerChristian Grothoff <christian@grothoff.org>
Thu, 3 Nov 2011 13:24:10 +0000 (13:24 +0000)
src/fs/gnunet-service-fs_indexing.c

index ab3f77abee701cd67598f4fc7c3af7205a893230..ce3f21cd6c1e33ba494ee451905e5081c44c0d6f 100644 (file)
@@ -538,6 +538,16 @@ GNUNET_FS_handle_on_demand_block (const GNUNET_HashCode * key, uint32_t size,
   odb = (const struct OnDemandBlock *) data;
   off = GNUNET_ntohll (odb->offset);
   fn = (const char *) GNUNET_CONTAINER_multihashmap_get (ifm, &odb->file_id);
+  if (0 != ACCESS (fn, R_OK))
+  {
+    GNUNET_STATISTICS_update (GSF_stats,
+                             gettext_noop ("# index blocks removed: original file inaccessible"),
+                             1,
+                             GNUNET_YES);
+    GNUNET_DATASTORE_remove (dsh, key, size, data, -1, -1,
+                             GNUNET_TIME_UNIT_FOREVER_REL, &remove_cont, NULL);
+    return GNUNET_SYSERR;
+  }
   fh = NULL;
   if ((NULL == fn) ||
       (NULL ==