IMFS: Fix resource leak in IMFS_allocate_node()

This commit is contained in:
Sebastian Huber
2012-12-21 12:21:11 +01:00
parent c5d27600f9
commit 3b91605e84
2 changed files with 65 additions and 8 deletions

View File

@@ -32,6 +32,7 @@ IMFS_jnode_t *IMFS_allocate_node(
)
{
IMFS_jnode_t *node;
IMFS_jnode_t *initialized_node;
struct timeval tv;
if ( namelen > IMFS_NAME_MAX ) {
@@ -82,7 +83,12 @@ IMFS_jnode_t *IMFS_allocate_node(
node->stat_ctime = (time_t) tv.tv_sec;
node->st_ino = ++fs_info->ino_count;
return (*node->control->node_initialize)( node, info );
initialized_node = (*node->control->node_initialize)( node, info );
if ( initialized_node == NULL ) {
free( node );
}
return initialized_node;
}
IMFS_jnode_t *IMFS_create_node_with_control(