View | Details | Raw Unified | Return to bug 2963
Collapse All | Expand All

(-)a/channels.c (-3 / +34 lines)
Lines 639-648 void Link Here
639
channel_free_all(struct ssh *ssh)
639
channel_free_all(struct ssh *ssh)
640
{
640
{
641
	u_int i;
641
	u_int i;
642
	struct ssh_channels *sc = ssh->chanctxt;
642
643
643
	for (i = 0; i < ssh->chanctxt->channels_alloc; i++)
644
644
		if (ssh->chanctxt->channels[i] != NULL)
645
	for (i = 0; i < sc->channels_alloc; i++)
645
			channel_free(ssh, ssh->chanctxt->channels[i]);
646
		if (sc->channels[i] != NULL)
647
			channel_free(ssh, sc->channels[i]);
648
649
	free(sc->channels);
650
	sc->channels= NULL;
651
652
	sc->channels_alloc = 0;
653
	sc->channel_max_fd = 0;
654
655
656
	if (sc->x11_saved_display) {
657
		free(sc->x11_saved_display);
658
		sc->x11_saved_display= NULL;
659
	}
660
661
	if (sc->x11_saved_proto) {
662
		free(sc->x11_saved_proto);
663
		sc->x11_saved_proto= NULL;
664
	}
665
666
	if (sc->x11_saved_data) {
667
		free(sc->x11_saved_data);
668
		sc->x11_saved_data= NULL;
669
		sc->x11_saved_data_len = 0;
670
	}
671
672
	if (sc->x11_fake_data) {
673
		free(sc->x11_fake_data);
674
		sc->x11_fake_data= NULL;
675
		sc->x11_fake_data_len = 0;
676
	}
646
}
677
}
647
678
648
/*
679
/*

Return to bug 2963