#include "data/casereader-provider.h"
#include "data/casereader-shim.h"
#include "data/casewriter.h"
+#include "data/control-stack.h"
#include "data/dictionary.h"
#include "data/file-handle-def.h"
#include "data/session.h"
dataset_clear (ds);
dict_destroy (ds->dict);
caseinit_destroy (ds->caseinit);
+ ctl_stack_clear ();
trns_chain_destroy (ds->permanent_trns_chain);
dataset_transformations_changed__ (ds, false);
free (ds->name);
add_case_limit_trns (ds);
if (filter)
add_filter_trns (ds);
- trns_chain_finalize (ds->cur_trns_chain);
+ ctl_stack_clear ();
/* Make permanent_dict refer to the dictionary right before
data reaches the sink. */
ds->permanent_dict = dict_clone (ds->dict);
- trns_chain_finalize (ds->permanent_trns_chain);
+ ctl_stack_clear ();
ds->temporary_trns_chain = ds->cur_trns_chain = trns_chain_create ();
dataset_transformations_changed__ (ds, true);
}
{
if (proc_in_temporary_transformations (ds))
{
- trns_chain_finalize (ds->temporary_trns_chain);
+ ctl_stack_clear ();
trns_chain_splice (ds->permanent_trns_chain, ds->temporary_trns_chain);
ds->temporary_trns_chain = NULL;
ds->dict = ds->permanent_dict;
ds->permanent_dict = NULL;
+ ctl_stack_clear ();
trns_chain_destroy (ds->temporary_trns_chain);
ds->temporary_trns_chain = NULL;
dataset_transformations_changed__ (
{
bool ok;
assert (ds->proc_state == PROC_COMMITTED);
+ ctl_stack_clear ();
ok = trns_chain_destroy (ds->permanent_trns_chain);
ok = trns_chain_destroy (ds->temporary_trns_chain) && ok;
ds->permanent_trns_chain = ds->cur_trns_chain = trns_chain_create ();