LRN: Iterate-over-a-copy-of-ksk-when-removing-items
authorChristian Grothoff <christian@grothoff.org>
Mon, 20 Feb 2012 09:09:18 +0000 (09:09 +0000)
committerChristian Grothoff <christian@grothoff.org>
Mon, 20 Feb 2012 09:09:18 +0000 (09:09 +0000)
src/fs/fs_sharetree.c

index a876dac99b54bd68b9ac3c7c68ac1742edd710b9..ca5f381757a68e1eabc32d4644c27b610515f6ad 100644 (file)
@@ -384,7 +384,11 @@ share_tree_trim (struct TrimContext *tc,
   {
     tc->pos = pos;
     if (NULL != pos->ksk_uri)
-      GNUNET_FS_uri_ksk_get_keywords (pos->ksk_uri, &remove_high_frequency_keywords, tc);
+    {
+      struct GNUNET_FS_Uri *ksk_uri_copy = GNUNET_FS_uri_dup (pos->ksk_uri);
+      GNUNET_FS_uri_ksk_get_keywords (ksk_uri_copy, &remove_high_frequency_keywords, tc);
+      GNUNET_FS_uri_destroy (ksk_uri_copy);
+    }
   }
 
   /* add high-frequency meta data and keywords to parent */