X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fhelper.c;h=b582298186b2cee49f68dc88dd8cfb56323dd680;hb=d908f52b818f4fdf2ab23797756812ec2986bd2b;hp=f8e3ddba23e212723e84d95aed2eeb1458faad47;hpb=e850a37743edb8035b15c4ed313a2b8fdafdc696;p=pspp-builds.git diff --git a/src/ui/gui/helper.c b/src/ui/gui/helper.c index f8e3ddba..b5822981 100644 --- a/src/ui/gui/helper.c +++ b/src/ui/gui/helper.c @@ -168,8 +168,13 @@ extern PsppireDataStore *the_data_store; gboolean execute_syntax (struct getl_interface *sss) { + gboolean status; struct lexer *lexer; + struct casereader *reader = psppire_data_store_get_reader (the_data_store); + + proc_set_active_file_data (the_dataset, reader); + g_return_val_if_fail (proc_has_active_file (the_dataset), FALSE); lexer = lex_create (the_source_stream); @@ -189,9 +194,20 @@ execute_syntax (struct getl_interface *sss) lex_destroy (lexer); /* GUI syntax needs this implicit EXECUTE command at the end of - every script. Otherwise commands like GET could leave the GUI without - a casefile. */ - return proc_execute (the_dataset); + every script. Otherwise commands like GET could leave the GUI + without a datasheet. */ + status = proc_execute (the_dataset); + + psppire_dict_replace_dictionary (the_data_store->dict, + dataset_dict (the_dataset)); + + { + PsppireCaseFile *pcf = psppire_case_file_new (dataset_source (the_dataset)); + + psppire_data_store_set_case_file (the_data_store, pcf); + } + + return status; }