X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=vss.c;h=ad5f7ec0db6886894a90f32b4c5adf444871ddf0;hp=737b77ac29e546fcdbf808dbd884e5dcf5b291e5;hb=442a3320ff155d09b990c0ee2abace399cbcd6dd;hpb=f1164756a9ce8f61b12060a48b84977f24d9e2b3 diff --git a/vss.c b/vss.c index 737b77ac..ad5f7ec0 100644 --- a/vss.c +++ b/vss.c @@ -689,9 +689,11 @@ void vss_del_fec_client(struct fec_client *fc) list_del(&fc->node); free(fc->enc_buf); - for (i = 0; i < fc_num_data_slices(fc); i++) - free(fc->src_data[i]); - free(fc->src_data); + if (fc->src_data) { + for (i = 0; i < fc_num_data_slices(fc); i++) + free(fc->src_data[i]); + free(fc->src_data); + } fec_free(fc->parms); free(fc); } @@ -1168,7 +1170,7 @@ void vss_init(int afs_socket, struct sched *s) vsst->afs_socket = afs_socket; ms2tv(announce_time, &vsst->announce_tv); PARA_INFO_LOG("announce timeval: %lums\n", tv2ms(&vsst->announce_tv)); - INIT_LIST_HEAD(&fec_client_list); + init_list_head(&fec_client_list); FOR_EACH_SENDER(i) { PARA_NOTICE_LOG("initializing %s sender\n", senders[i]->name); senders[i]->init();