Fix lack of ->name and ->location in DO REPEAT's getl_interface.
[pspp-builds.git] / src / language / data-io / data-reader.c
index 0bff86961e5fcb5f9f5c926cad1981d084121ab4..7b2690653ae627dd4df881777ab988d3d258bc4e 100644 (file)
@@ -32,7 +32,7 @@
 #include <language/command.h>
 #include <language/data-io/file-handle.h>
 #include <language/lexer/lexer.h>
-#include <language/line-buffer.h>
+#include <language/prompt.h>
 #include <libpspp/alloc.h>
 #include <libpspp/assertion.h>
 #include <libpspp/message.h>
@@ -169,10 +169,10 @@ read_inline_record (struct dfm_reader *r)
         lex_get (r->lexer);
       if (!lex_force_match_id (r->lexer, "BEGIN") || !lex_force_match_id (r->lexer, "DATA"))
         return false;
-      getl_set_prompt_style (GETL_PROMPT_DATA);
+      prompt_set_style (PROMPT_DATA);
     }
       
-  if (!lex_get_line_raw (r->lexer))
+  if (!lex_get_line_raw (r->lexer, NULL))
     {
       msg (SE, _("Unexpected end-of-file while reading data in BEGIN "
                  "DATA.  This probably indicates "
@@ -210,6 +210,7 @@ read_file_record (struct dfm_reader *r)
                  fh_get_name (r->fh), strerror (errno));
           return false;
         }
+      ds_chomp (&r->line, '\n');
     }
   else if (fh_get_mode (r->fh) == FH_MODE_BINARY)
     {
@@ -443,7 +444,7 @@ cmd_begin_data (struct lexer *lexer, struct dataset *ds)
   r->flags |= DFM_SAW_BEGIN_DATA;
 
   /* Input procedure reads from inline file. */
-  getl_set_prompt_style (GETL_PROMPT_DATA);
+  prompt_set_style (PROMPT_DATA);
   ok = procedure (ds, NULL, NULL);
 
   dfm_close_reader (r);