diff options
author | Omar Tarabai <tarabai@devegypt.com> | 2014-06-11 11:54:30 +0000 |
---|---|---|
committer | Omar Tarabai <tarabai@devegypt.com> | 2014-06-11 11:54:30 +0000 |
commit | 495f1745570ea1d5ba8e23916030815fe65d1cbc (patch) | |
tree | d1eb8d6f5773db3ddabf165dcd3ea1c85ceabcff /src/peerstore/gnunet-service-peerstore.c | |
parent | 6f79b466c1333431aca6ee3158a29cdf62f1002e (diff) |
peerstore: minor fixes
Diffstat (limited to 'src/peerstore/gnunet-service-peerstore.c')
-rw-r--r-- | src/peerstore/gnunet-service-peerstore.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/peerstore/gnunet-service-peerstore.c b/src/peerstore/gnunet-service-peerstore.c index d4f0ebc2ce..c9ddafa10a 100644 --- a/src/peerstore/gnunet-service-peerstore.c +++ b/src/peerstore/gnunet-service-peerstore.c @@ -75,9 +75,16 @@ shutdown_task (void *cls, GNUNET_free (db_lib_name); db_lib_name = NULL; } - GNUNET_SERVER_notification_context_destroy(nc); - GNUNET_CONTAINER_multihashmap_destroy(watchers); - watchers = NULL; + if(NULL != nc) + { + GNUNET_SERVER_notification_context_destroy(nc); + nc = NULL; + } + if(NULL != watchers) + { + GNUNET_CONTAINER_multihashmap_destroy(watchers); + watchers = NULL; + } GNUNET_SCHEDULER_shutdown(); } @@ -395,10 +402,8 @@ run (void *cls, if(NULL == db) { GNUNET_log(GNUNET_ERROR_TYPE_ERROR, _("Could not load database backend `%s'\n"), db_lib_name); - /* FIXME: - * error handling required, otherwise you try to access db - * in message handlers like handle_store ... - * if(GNUNET_OK != db->store_record(db->cls, ... */ + GNUNET_SCHEDULER_add_now (&shutdown_task, NULL); + return; } else { |