msi: Destroy streams cache when applying a transform.

oldstable
Hans Leidekker 2010-02-19 12:25:38 +01:00 committed by Alexandre Julliard
parent f80f1cc2db
commit d9e40b8219
1 changed files with 13 additions and 10 deletions

View File

@ -225,16 +225,6 @@ end:
return ret;
}
void append_storage_to_db( MSIDATABASE *db, IStorage *stg )
{
MSITRANSFORM *t;
t = msi_alloc( sizeof *t );
t->stg = stg;
IStorage_AddRef( stg );
list_add_tail( &db->transforms, &t->entry );
}
static void free_transforms( MSIDATABASE *db )
{
while( !list_empty( &db->transforms ) )
@ -259,6 +249,19 @@ static void free_streams( MSIDATABASE *db )
}
}
void append_storage_to_db( MSIDATABASE *db, IStorage *stg )
{
MSITRANSFORM *t;
t = msi_alloc( sizeof *t );
t->stg = stg;
IStorage_AddRef( stg );
list_add_tail( &db->transforms, &t->entry );
/* the transform may add or replace streams */
free_streams( db );
}
static VOID MSI_CloseDatabase( MSIOBJECTHDR *arg )
{
MSIDATABASE *db = (MSIDATABASE *) arg;