diff options
author | Christian Grothoff <christian@grothoff.org> | 2010-06-23 15:20:46 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2010-06-23 15:20:46 +0000 |
commit | 44c04b83c12e36d3352ff1309373aaf95ddfb7cf (patch) | |
tree | 3330f888969b971dc409f3c88a23c4609aeeeab8 /src/util/connection.c | |
parent | 9e334c58dae21a26059085c7e0b1363776a8e28a (diff) | |
download | gnunet-44c04b83c12e36d3352ff1309373aaf95ddfb7cf.tar.gz gnunet-44c04b83c12e36d3352ff1309373aaf95ddfb7cf.zip |
fix
Diffstat (limited to 'src/util/connection.c')
-rw-r--r-- | src/util/connection.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/util/connection.c b/src/util/connection.c index a855bd1ec..b67da814a 100644 --- a/src/util/connection.c +++ b/src/util/connection.c | |||
@@ -622,6 +622,7 @@ connect_fail_continuation (struct GNUNET_CONNECTION_Handle *h) | |||
622 | GNUNET_SCHEDULER_cancel (h->sched, h->nth.timeout_task); | 622 | GNUNET_SCHEDULER_cancel (h->sched, h->nth.timeout_task); |
623 | h->nth.timeout_task = GNUNET_SCHEDULER_NO_TASK; | 623 | h->nth.timeout_task = GNUNET_SCHEDULER_NO_TASK; |
624 | h->ccs -= COCO_TRANSMIT_READY; | 624 | h->ccs -= COCO_TRANSMIT_READY; |
625 | GNUNET_assert (h->write_task == GNUNET_SCHEDULER_NO_TASK); | ||
625 | h->write_task = GNUNET_SCHEDULER_add_after (h->sched, | 626 | h->write_task = GNUNET_SCHEDULER_add_after (h->sched, |
626 | GNUNET_SCHEDULER_NO_TASK, | 627 | GNUNET_SCHEDULER_NO_TASK, |
627 | &transmit_ready, h); | 628 | &transmit_ready, h); |
@@ -680,6 +681,7 @@ connect_success_continuation (struct GNUNET_CONNECTION_Handle *h) | |||
680 | GNUNET_SCHEDULER_cancel (h->sched, h->nth.timeout_task); | 681 | GNUNET_SCHEDULER_cancel (h->sched, h->nth.timeout_task); |
681 | h->nth.timeout_task = GNUNET_SCHEDULER_NO_TASK; | 682 | h->nth.timeout_task = GNUNET_SCHEDULER_NO_TASK; |
682 | h->ccs -= COCO_TRANSMIT_READY; | 683 | h->ccs -= COCO_TRANSMIT_READY; |
684 | GNUNET_assert (h->write_task == GNUNET_SCHEDULER_NO_TASK); | ||
683 | h->write_task = | 685 | h->write_task = |
684 | GNUNET_SCHEDULER_add_write_net (h->sched, | 686 | GNUNET_SCHEDULER_add_write_net (h->sched, |
685 | GNUNET_TIME_absolute_get_remaining | 687 | GNUNET_TIME_absolute_get_remaining |
@@ -1605,6 +1607,9 @@ GNUNET_CONNECTION_notify_transmit_ready (struct GNUNET_CONNECTION_Handle | |||
1605 | if ((sock->sock == NULL) && | 1607 | if ((sock->sock == NULL) && |
1606 | (sock->ap_head == NULL) && (sock->dns_active == NULL)) | 1608 | (sock->ap_head == NULL) && (sock->dns_active == NULL)) |
1607 | { | 1609 | { |
1610 | if (sock->write_task != GNUNET_SCHEDULER_NO_TASK) | ||
1611 | GNUNET_SCHEDULER_cancel (sock->sched, | ||
1612 | sock->write_task); | ||
1608 | sock->write_task = GNUNET_SCHEDULER_add_now (sock->sched, | 1613 | sock->write_task = GNUNET_SCHEDULER_add_now (sock->sched, |
1609 | &connect_error, sock); | 1614 | &connect_error, sock); |
1610 | return &sock->nth; | 1615 | return &sock->nth; |