X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;f=yaffs_tagsmarshall.c;h=397715dbc9eb00f27a79afbd3a5910352e2768bc;hb=7cd92e57ab45ca1904926bea11e1d0f1d1568bd7;hp=bcd6f242dc256d999c2cc22ac6cd77fd3b1aa11f;hpb=5af18695480b470eea2a2447a1c5211073b9c59b;p=yaffs2.git diff --git a/yaffs_tagsmarshall.c b/yaffs_tagsmarshall.c index bcd6f24..397715d 100644 --- a/yaffs_tagsmarshall.c +++ b/yaffs_tagsmarshall.c @@ -100,8 +100,12 @@ static int yaffs_tags_marshall_read(struct yaffs_dev *dev, BUG(); - if (retval == YAFFS_FAIL) + if (retval == YAFFS_FAIL) { + if (local_data) + yaffs_release_temp_buffer(dev, data); + return YAFFS_FAIL; + } if (dev->param.inband_tags) { if (tags) { @@ -172,10 +176,7 @@ static int yaffs_tags_marshall_query_block(struct yaffs_dev *dev, int block_no, "block query returns seq %d state %d", *seq_number, *state); - if (retval == 0) - return YAFFS_OK; - else - return YAFFS_FAIL; + return retval; } static int yaffs_tags_marshall_mark_bad(struct yaffs_dev *dev, int block_no)