[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r12202 - gnunet/src/fs
From: |
gnunet |
Subject: |
[GNUnet-SVN] r12202 - gnunet/src/fs |
Date: |
Sun, 11 Jul 2010 23:47:50 +0200 |
Author: grothoff
Date: 2010-07-11 23:47:50 +0200 (Sun, 11 Jul 2010)
New Revision: 12202
Modified:
gnunet/src/fs/fs.h
gnunet/src/fs/fs_publish.c
Log:
fix 1579
Modified: gnunet/src/fs/fs.h
===================================================================
--- gnunet/src/fs/fs.h 2010-07-11 21:02:58 UTC (rev 12201)
+++ gnunet/src/fs/fs.h 2010-07-11 21:47:50 UTC (rev 12202)
@@ -1302,6 +1302,11 @@
struct GNUNET_FS_FileInformation *fi_pos;
/**
+ * Non-null if we are currently hashing a file.
+ */
+ struct GNUNET_CRYPTO_FileHashContext *fhc;
+
+ /**
* Connection to the datastore service.
*/
struct GNUNET_DATASTORE_Handle *dsh;
Modified: gnunet/src/fs/fs_publish.c
===================================================================
--- gnunet/src/fs/fs_publish.c 2010-07-11 21:02:58 UTC (rev 12201)
+++ gnunet/src/fs/fs_publish.c 2010-07-11 21:47:50 UTC (rev 12202)
@@ -113,6 +113,11 @@
{
struct GNUNET_FS_PublishContext *pc = cls;
+ if (pc->fhc != NULL)
+ {
+ GNUNET_CRYPTO_hash_file_cancel (pc->fhc);
+ pc->fhc = NULL;
+ }
GNUNET_FS_file_information_destroy (pc->fi, NULL, NULL);
if (pc->namespace != NULL)
GNUNET_FS_namespace_delete (pc->namespace, GNUNET_NO);
@@ -788,6 +793,7 @@
uint64_t ino;
char *fn;
+ sc->fhc = NULL;
p = sc->fi_pos;
if (NULL == res)
{
@@ -1023,12 +1029,12 @@
else
{
p->start_time = GNUNET_TIME_absolute_get ();
- GNUNET_CRYPTO_hash_file (pc->h->sched,
- GNUNET_SCHEDULER_PRIORITY_IDLE,
- p->filename,
- HASHING_BLOCKSIZE,
- &hash_for_index_cb,
- pc);
+ pc->fhc = GNUNET_CRYPTO_hash_file (pc->h->sched,
+ GNUNET_SCHEDULER_PRIORITY_IDLE,
+ p->filename,
+ HASHING_BLOCKSIZE,
+ &hash_for_index_cb,
+ pc);
}
return;
}
@@ -1235,6 +1241,7 @@
struct GNUNET_FS_PublishContext *ret;
struct GNUNET_DATASTORE_Handle *dsh;
+ GNUNET_assert (NULL != h);
if (0 == (options & GNUNET_FS_PUBLISH_OPTION_SIMULATE_ONLY))
{
dsh = GNUNET_DATASTORE_connect (h->cfg,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r12202 - gnunet/src/fs,
gnunet <=