aboutsummaryrefslogtreecommitdiff
path: root/src/identity
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2013-11-09 20:19:39 +0000
committerChristian Grothoff <christian@grothoff.org>2013-11-09 20:19:39 +0000
commita1f112852c93046ff3bbcac107cf178c56f23bf2 (patch)
tree49f82cf39840d527afcc10656bb9c0376cf8cdba /src/identity
parentf2e6a9f69138f60a337d23d9149c7eab109f6f0a (diff)
-fixing crash in #3101, but just replacing it with a break, so there is likely still an issue left
Diffstat (limited to 'src/identity')
-rw-r--r--src/identity/identity_api.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/identity/identity_api.c b/src/identity/identity_api.c
index d697398376..1a2b9e4da1 100644
--- a/src/identity/identity_api.c
+++ b/src/identity/identity_api.c
@@ -418,6 +418,14 @@ message_handler (void *cls,
return;
}
op = h->op_head;
+ if (NULL == op)
+ {
+ GNUNET_break (0);
+ reschedule_connect (h);
+ return;
+ }
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Received SET_DEFAULT message from identity service\n");
GNUNET_CONTAINER_DLL_remove (h->op_head,
h->op_tail,
op);
@@ -889,6 +897,8 @@ GNUNET_IDENTITY_cancel (struct GNUNET_IDENTITY_Operation *op)
(NULL == h->client) )
{
/* request not active, can simply remove */
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Client aborted non-head operation, simply removing it\n");
GNUNET_CONTAINER_DLL_remove (h->op_head,
h->op_tail,
op);
@@ -898,6 +908,8 @@ GNUNET_IDENTITY_cancel (struct GNUNET_IDENTITY_Operation *op)
if (NULL != h->th)
{
/* request active but not yet with service, can still abort */
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Client aborted head operation prior to transmission, aborting it\n");
GNUNET_CLIENT_notify_transmit_ready_cancel (h->th);
h->th = NULL;
GNUNET_CONTAINER_DLL_remove (h->op_head,
@@ -908,6 +920,8 @@ GNUNET_IDENTITY_cancel (struct GNUNET_IDENTITY_Operation *op)
return;
}
/* request active with service, simply ensure continuations are not called */
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Client aborted active request, NULLing continuation\n");
op->cont = NULL;
op->cb = NULL;
}