X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=yaffs_tagsmarshall.c;h=397715dbc9eb00f27a79afbd3a5910352e2768bc;hp=cded165b367c53aedbaead792b5cae550a5d85ee;hb=e40cfb32abd2a9147f6fc956fef433e794baadd0;hpb=3de09ef5a181999f7340462154034b727827e4fa diff --git a/yaffs_tagsmarshall.c b/yaffs_tagsmarshall.c index cded165..397715d 100644 --- a/yaffs_tagsmarshall.c +++ b/yaffs_tagsmarshall.c @@ -14,7 +14,7 @@ * tags storage. */ -#include "yaffs_guts.h" +#include "yaffs_tagsmarshall.h" #include "yaffs_trace.h" #include "yaffs_packedtags2.h" @@ -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)