Commit bc6ce2b2 authored by Aric Stewart's avatar Aric Stewart Committed by Alexandre Julliard

Free memory after we finish using it instead of just before.

parent 97ebf8f5
...@@ -212,9 +212,9 @@ static UINT CREATE_delete( struct tagMSIVIEW *view ) ...@@ -212,9 +212,9 @@ static UINT CREATE_delete( struct tagMSIVIEW *view )
HeapFree( GetProcessHeap(), 0, t->colname ); HeapFree( GetProcessHeap(), 0, t->colname );
HeapFree( GetProcessHeap(), 0, t ); HeapFree( GetProcessHeap(), 0, t );
} }
msiobj_release( &cv->db->hdr );
HeapFree( GetProcessHeap(), 0, cv->name ); HeapFree( GetProcessHeap(), 0, cv->name );
HeapFree( GetProcessHeap(), 0, cv ); HeapFree( GetProcessHeap(), 0, cv );
msiobj_release( &cv->db->hdr );
return ERROR_SUCCESS; return ERROR_SUCCESS;
} }
......
...@@ -241,8 +241,8 @@ static UINT DISTINCT_delete( struct tagMSIVIEW *view ) ...@@ -241,8 +241,8 @@ static UINT DISTINCT_delete( struct tagMSIVIEW *view )
if( dv->translation ) if( dv->translation )
HeapFree( GetProcessHeap(), 0, dv->translation ); HeapFree( GetProcessHeap(), 0, dv->translation );
HeapFree( GetProcessHeap(), 0, dv );
msiobj_release( &dv->db->hdr ); msiobj_release( &dv->db->hdr );
HeapFree( GetProcessHeap(), 0, dv );
return ERROR_SUCCESS; return ERROR_SUCCESS;
} }
......
...@@ -179,8 +179,8 @@ static UINT INSERT_delete( struct tagMSIVIEW *view ) ...@@ -179,8 +179,8 @@ static UINT INSERT_delete( struct tagMSIVIEW *view )
if( sv ) if( sv )
sv->ops->delete( sv ); sv->ops->delete( sv );
delete_value_list( iv->vals ); delete_value_list( iv->vals );
HeapFree( GetProcessHeap(), 0, iv );
msiobj_release( &iv->db->hdr ); msiobj_release( &iv->db->hdr );
HeapFree( GetProcessHeap(), 0, iv );
return ERROR_SUCCESS; return ERROR_SUCCESS;
} }
......
...@@ -244,8 +244,8 @@ static UINT ORDER_delete( struct tagMSIVIEW *view ) ...@@ -244,8 +244,8 @@ static UINT ORDER_delete( struct tagMSIVIEW *view )
HeapFree( GetProcessHeap(), 0, ov->reorder ); HeapFree( GetProcessHeap(), 0, ov->reorder );
ov->reorder = NULL; ov->reorder = NULL;
HeapFree( GetProcessHeap(), 0, ov );
msiobj_release( &ov->db->hdr ); msiobj_release( &ov->db->hdr );
HeapFree( GetProcessHeap(), 0, ov );
return ERROR_SUCCESS; return ERROR_SUCCESS;
} }
......
...@@ -171,8 +171,8 @@ static UINT UPDATE_delete( struct tagMSIVIEW *view ) ...@@ -171,8 +171,8 @@ static UINT UPDATE_delete( struct tagMSIVIEW *view )
if( wv ) if( wv )
wv->ops->delete( wv ); wv->ops->delete( wv );
delete_value_list( uv->vals ); delete_value_list( uv->vals );
HeapFree( GetProcessHeap(), 0, uv );
msiobj_release( &uv->db->hdr ); msiobj_release( &uv->db->hdr );
HeapFree( GetProcessHeap(), 0, uv );
return ERROR_SUCCESS; return ERROR_SUCCESS;
} }
......
...@@ -336,8 +336,8 @@ static UINT WHERE_delete( struct tagMSIVIEW *view ) ...@@ -336,8 +336,8 @@ static UINT WHERE_delete( struct tagMSIVIEW *view )
if( wv->cond ) if( wv->cond )
delete_expr( wv->cond ); delete_expr( wv->cond );
HeapFree( GetProcessHeap(), 0, wv );
msiobj_release( &wv->db->hdr ); msiobj_release( &wv->db->hdr );
HeapFree( GetProcessHeap(), 0, wv );
return ERROR_SUCCESS; return ERROR_SUCCESS;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment