msi: Implement DROP_delete that deletes the drop view. We were leaking the view before.
This commit is contained in:
parent
37a058208d
commit
f45db6eee7
|
@ -78,6 +78,20 @@ static UINT DROP_get_dimensions(struct tagMSIVIEW *view, UINT *rows, UINT *cols)
|
|||
return ERROR_FUNCTION_FAILED;
|
||||
}
|
||||
|
||||
static UINT DROP_delete( struct tagMSIVIEW *view )
|
||||
{
|
||||
MSIDROPVIEW *dv = (MSIDROPVIEW*)view;
|
||||
|
||||
TRACE("%p\n", dv );
|
||||
|
||||
if( dv->table )
|
||||
dv->table->ops->delete( dv->table );
|
||||
|
||||
msi_free( dv );
|
||||
|
||||
return ERROR_SUCCESS;
|
||||
}
|
||||
|
||||
static const MSIVIEWOPS drop_ops =
|
||||
{
|
||||
NULL,
|
||||
|
@ -91,7 +105,7 @@ static const MSIVIEWOPS drop_ops =
|
|||
DROP_get_dimensions,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
DROP_delete,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
|
|
|
@ -2326,7 +2326,6 @@ static UINT TABLE_drop(struct tagMSIVIEW *view)
|
|||
|
||||
list_remove(&tv->table->entry);
|
||||
free_table(tv->table);
|
||||
TABLE_delete(view);
|
||||
|
||||
done:
|
||||
msiobj_release(&rec->hdr);
|
||||
|
|
Loading…
Reference in New Issue