X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Frmr%2Fsi%2Fsrc%2Fsi95%2Fsitrash.c;fp=src%2Frmr%2Fsi%2Fsrc%2Fsi95%2Fsitrash.c;h=679e2f45d6b22f40d63b01dd3a20636668f65845;hb=3d7285ec4c96724b64968f46c2075b77e8d08543;hp=efc2cd3a37b3190ffdd1401a1d3cecd6835dc175;hpb=fc5c77b3d78988aa407118235d7f5978642df753;p=ric-plt%2Flib%2Frmr.git diff --git a/src/rmr/si/src/si95/sitrash.c b/src/rmr/si/src/si95/sitrash.c index efc2cd3..679e2f4 100644 --- a/src/rmr/si/src/si95/sitrash.c +++ b/src/rmr/si/src/si95/sitrash.c @@ -51,12 +51,15 @@ extern void SItrash( int type, void *bp ) case TP_BLK: // we assume its off the list tp = (struct tp_blk *) bp; - for( iptr = tp->squeue; iptr; iptr = inext ) // trash any pending send buffers - { + iptr = tp->squeue; + while( iptr != NULL ) { inext = iptr->next; + free( iptr->data ); // we could recurse, but that seems silly free( iptr->addr ); free( iptr ); + + iptr = inext; } if( tp->fd >= 0 ) {