Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1ab92785 authored by marcin.slusarz@gmail.com's avatar marcin.slusarz@gmail.com Committed by Jan Kara
Browse files

udf: simplify __udf_read_inode



- move all brelse(ibh) after main if, because it's called
  on every path except one where ibh is null
- move variables to the most inner blocks

Signed-off-by: default avatarMarcin Slusarz <marcin.slusarz@gmail.com>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
parent c2104fda
Loading
Loading
Loading
Loading
+23 −29
Original line number Diff line number Diff line
@@ -1101,16 +1101,16 @@ static void __udf_read_inode(struct inode *inode)
	fe = (struct fileEntry *)bh->b_data;

	if (fe->icbTag.strategyType == cpu_to_le16(4096)) {
		struct buffer_head *ibh = NULL, *nbh = NULL;
		struct indirectEntry *ie;
		struct buffer_head *ibh;

		ibh = udf_read_ptagged(inode->i_sb, iinfo->i_location, 1,
					&ident);
		if (ident == TAG_IDENT_IE) {
			if (ibh) {
		if (ident == TAG_IDENT_IE && ibh) {
			struct buffer_head *nbh = NULL;
			kernel_lb_addr loc;
				ie = (struct indirectEntry *)ibh->b_data;
			struct indirectEntry *ie;

			ie = (struct indirectEntry *)ibh->b_data;
			loc = lelb_to_cpu(ie->indirectICB.extLocation);

			if (ie->indirectICB.extLength &&
@@ -1126,17 +1126,11 @@ static void __udf_read_inode(struct inode *inode)
					brelse(nbh);
					__udf_read_inode(inode);
					return;
					} else {
						brelse(nbh);
						brelse(ibh);
				}
				} else {
					brelse(ibh);
				brelse(nbh);
			}
		}
		} else {
		brelse(ibh);
		}
	} else if (fe->icbTag.strategyType != cpu_to_le16(4)) {
		printk(KERN_ERR "udf: unsupported strategy type: %d\n",
		       le16_to_cpu(fe->icbTag.strategyType));