xfs: avoid double-free in xfs_attr_node_addname
authorEric Sandeen <sandeen@redhat.com>
Thu, 1 Aug 2013 01:18:54 +0000 (20:18 -0500)
committerBen Myers <bpm@sgi.com>
Tue, 13 Aug 2013 20:48:01 +0000 (15:48 -0500)
commit6dd93e9e5eb19e81a74b3df8426a945a08ad8a1f
tree75ff24b7d369bacc7d15be86338badb37da5f07a
parent2c2bcc0735f4ab052559b539f3fcab4087187232
xfs: avoid double-free in xfs_attr_node_addname

xfs_attr_node_addname()'s error handling tests whether it
should free "state" in the out: error handling label:

out:
        if (state)
                xfs_da_state_free(state);

but an earlier free doesn't set state to NULL afterwards; this
could lead to a double free.  Fix it by setting state to NULL
after it's freed.

This was found by Coverity.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Reviewed-by: Mark Tinguely <tinguely@sgi.com>
Signed-off-by: Ben Myers <bpm@sgi.com>
fs/xfs/xfs_attr.c