wbemprox: Always free 'new_path'.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr> Signed-off-by: Hans Leidekker <hans@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
769ba7d1e9
commit
a45dfea99a
|
@ -2341,7 +2341,13 @@ static enum fill_status fill_datafile( struct table *table, const struct expr *c
|
|||
goto done;
|
||||
}
|
||||
if (!wcscmp( data.cFileName, dotW ) || !wcscmp( data.cFileName, dotdotW )) continue;
|
||||
new_path = append_path( path, data.cFileName, &len );
|
||||
|
||||
if (!(new_path = append_path( path, data.cFileName, &len )))
|
||||
{
|
||||
status = FILL_STATUS_FAILED;
|
||||
FindClose( handle );
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
|
||||
{
|
||||
|
@ -2354,6 +2360,7 @@ static enum fill_status fill_datafile( struct table *table, const struct expr *c
|
|||
rec = (struct record_datafile *)(table->data + offset);
|
||||
rec->name = build_name( root[0], new_path );
|
||||
rec->version = get_file_version( rec->name );
|
||||
heap_free( new_path );
|
||||
if (!match_row( table, row, cond, &status ))
|
||||
{
|
||||
free_row_values( table, row );
|
||||
|
@ -2465,7 +2472,13 @@ static enum fill_status fill_directory( struct table *table, const struct expr *
|
|||
!wcscmp( data.cFileName, dotW ) || !wcscmp( data.cFileName, dotdotW ))
|
||||
continue;
|
||||
|
||||
new_path = append_path( path, data.cFileName, &len );
|
||||
if (!(new_path = append_path( path, data.cFileName, &len )))
|
||||
{
|
||||
FindClose( handle );
|
||||
status = FILL_STATUS_FAILED;
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (!(push_dir( dirstack, new_path, len )))
|
||||
{
|
||||
heap_free( new_path );
|
||||
|
@ -2476,6 +2489,7 @@ static enum fill_status fill_directory( struct table *table, const struct expr *
|
|||
rec = (struct record_directory *)(table->data + offset);
|
||||
rec->accessmask = FILE_ALL_ACCESS;
|
||||
rec->name = build_name( root[0], new_path );
|
||||
heap_free( new_path );
|
||||
if (!match_row( table, row, cond, &status ))
|
||||
{
|
||||
free_row_values( table, row );
|
||||
|
|
Loading…
Reference in New Issue