[ltt-dev] [UST PATCH] Make the error handling in open_channel more readable

Mathieu Desnoyers compudj at krystal.dyndns.org
Tue Feb 22 23:23:42 EST 2011


* Yannick Brosseau (yannick.brosseau at gmail.com) wrote:
> On 2011-02-22 23:06, Mathieu Desnoyers wrote:
> > * Yannick Brosseau (yannick.brosseau at gmail.com) wrote:
> >   
> >> Signed-off-by: Yannick Brosseau <yannick.brosseau at gmail.com>
> >> ---
> >>  libust/buffers.c |    9 ++++-----
> >>  1 files changed, 4 insertions(+), 5 deletions(-)
> >>
> >> diff --git a/libust/buffers.c b/libust/buffers.c
> >> index 4e8004c..534d0ef 100644
> >> --- a/libust/buffers.c
> >> +++ b/libust/buffers.c
> >> @@ -319,12 +319,11 @@ static int open_channel(struct ust_channel *chan, size_t subbuf_size,
> >>  
> >>  	return 0;
> >>  
> >> -	/* Jump directly inside the loop to close the buffers that were already
> >> -	 * opened. */
> >> -	for(; i>=0; i--) {
> >> -		close_buf(chan->buf[i]);
> >>  error:
> >> -		do {} while(0);
> >> +	/* Loop through the opened buffers and close them. Skip the current i, 
> >> +	   since it's the one that did not open. */
> >> +	for(i--; i>=0; i--) {
> >> +		close_buf(chan->buf[i]);
> >>     
> > Not sure I see how this is more readable. You seem to be changing the
> > code behavior too.
> >   
> 
> At least we don't have a jump un the middle of a loop and a complex nop
> operation.
> The behavior is the same.
> 
> We could also not reuse the i and loop from 0 to i-1.
> 

OK, I did coding style updates, but the change has been committed.

Thanks,

Mathieu


-- 
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com




More information about the lttng-dev mailing list