> + for (i = 0; i < es->num_bh; i++)> + err ? bforget(es->bh[i]):brelse(es->bh[i]);Please use a good old if / else instead of obsfucating the code.Also even without that this seems to be missing a few whitespaces.