diff options
Diffstat (limited to 'src/cadet/gnunet-service-cadet_channel.c')
-rw-r--r-- | src/cadet/gnunet-service-cadet_channel.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/cadet/gnunet-service-cadet_channel.c b/src/cadet/gnunet-service-cadet_channel.c index 06711dc8b..8ef598132 100644 --- a/src/cadet/gnunet-service-cadet_channel.c +++ b/src/cadet/gnunet-service-cadet_channel.c | |||
@@ -500,6 +500,11 @@ channel_destroy (struct CadetChannel *ch) | |||
500 | GNUNET_free (crm->data_message); | 500 | GNUNET_free (crm->data_message); |
501 | GNUNET_free (crm); | 501 | GNUNET_free (crm); |
502 | } | 502 | } |
503 | if (CADET_CHANNEL_LOOSE == ch->state) | ||
504 | { | ||
505 | GSC_drop_loose_channel (&ch->h_port, | ||
506 | ch); | ||
507 | } | ||
503 | if (NULL != ch->owner) | 508 | if (NULL != ch->owner) |
504 | { | 509 | { |
505 | free_channel_client (ch->owner); | 510 | free_channel_client (ch->owner); |
@@ -1136,8 +1141,6 @@ GCCH_channel_local_destroy (struct CadetChannel *ch, | |||
1136 | target, but that never went anywhere. Nothing to do here. */ | 1141 | target, but that never went anywhere. Nothing to do here. */ |
1137 | break; | 1142 | break; |
1138 | case CADET_CHANNEL_LOOSE: | 1143 | case CADET_CHANNEL_LOOSE: |
1139 | GSC_drop_loose_channel (&ch->h_port, | ||
1140 | ch); | ||
1141 | break; | 1144 | break; |
1142 | default: | 1145 | default: |
1143 | GCT_send_channel_destroy (ch->t, | 1146 | GCT_send_channel_destroy (ch->t, |