d = dict_create (s->encoding);
- /* Set the new dictionary's encoding early so that string length limitations
- are interpreted correctly. */
- d->encoding = xstrdup (s->encoding);
-
for (i = 0; i < s->var_cnt; i++)
{
struct variable *sv = s->var[i].var;
d->callbacks = NULL ;
dict_clear (d);
+ string_array_destroy (&d->documents);
hmap_destroy (&d->name_map);
attrset_destroy (&d->attributes);
dict_clear_mrsets (d);
{
int dict_index = var_get_dict_index (v);
const int case_index = var_get_case_index (v);
- const int width = var_get_width (v);
assert (dict_contains_var (d, v));
/* Free memory. */
var_clear_vardict (v);
- var_destroy (v);
if ( d->changed ) d->changed (d, d->changed_data);
invalidate_proto (d);
if (d->callbacks && d->callbacks->var_deleted )
- d->callbacks->var_deleted (d, dict_index, case_index, width, d->cb_data);
+ d->callbacks->var_deleted (d, v, dict_index, case_index, d->cb_data);
+
+ var_destroy (v);
}
/* Deletes the COUNT variables listed in VARS from D. This is