[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r16104 - gnunet/src/fs
From: |
gnunet |
Subject: |
[GNUnet-SVN] r16104 - gnunet/src/fs |
Date: |
Tue, 19 Jul 2011 11:56:49 +0200 |
Author: grothoff
Date: 2011-07-19 11:56:49 +0200 (Tue, 19 Jul 2011)
New Revision: 16104
Modified:
gnunet/src/fs/test_fs_publish_persistence.c
Log:
fix shutdown
Modified: gnunet/src/fs/test_fs_publish_persistence.c
===================================================================
--- gnunet/src/fs/test_fs_publish_persistence.c 2011-07-19 09:56:41 UTC (rev
16103)
+++ gnunet/src/fs/test_fs_publish_persistence.c 2011-07-19 09:56:49 UTC (rev
16104)
@@ -74,6 +74,8 @@
static int err;
+static GNUNET_SCHEDULER_TaskIdentifier rtask;
+
static void
abort_publish_task (void *cls,
const struct GNUNET_SCHEDULER_TaskContext *tc)
@@ -86,6 +88,13 @@
GNUNET_DISK_directory_remove (fn2);
GNUNET_free (fn2);
fn2 = NULL;
+ GNUNET_FS_stop (fs);
+ fs = NULL;
+ if (GNUNET_SCHEDULER_NO_TASK != rtask)
+ {
+ GNUNET_SCHEDULER_cancel (rtask);
+ rtask = GNUNET_SCHEDULER_NO_TASK;
+ }
}
@@ -98,6 +107,7 @@
restart_fs_task (void *cls,
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
+ rtask = GNUNET_SCHEDULER_NO_TASK;
GNUNET_FS_stop (fs);
fs = GNUNET_FS_start (cfg,
"test-fs-publish-persistence",
@@ -125,9 +135,9 @@
if (prev[i] == ev)
return;
prev[off++] = ev;
- GNUNET_SCHEDULER_add_with_priority (GNUNET_SCHEDULER_PRIORITY_URGENT,
- &restart_fs_task,
- NULL);
+ rtask = GNUNET_SCHEDULER_add_with_priority (GNUNET_SCHEDULER_PRIORITY_URGENT,
+ &restart_fs_task,
+ NULL);
}
@@ -144,7 +154,7 @@
consider_restart (event->status);
ret = event->value.publish.cctx;
printf ("Publish complete, %llu kbps.\n",
- (unsigned long long) (FILESIZE * 1000 /
(1+GNUNET_TIME_absolute_get_duration (start).rel_value) / 1024));
+ (unsigned long long) (FILESIZE * 1000LL /
(1+GNUNET_TIME_absolute_get_duration (start).rel_value) / 1024));
if (0 == strcmp ("publish-context-dir",
event->value.publish.cctx))
GNUNET_SCHEDULER_add_now (&abort_publish_task,
@@ -169,6 +179,8 @@
case GNUNET_FS_STATUS_PUBLISH_RESUME:
if (NULL == publish)
{
+ GNUNET_assert (GNUNET_YES ==
+ GNUNET_FS_file_information_is_directory
(event->value.publish.fi));
publish = event->value.publish.pc;
return "publish-context-dir";
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r16104 - gnunet/src/fs,
gnunet <=