projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Completely rewrite src/data/format.[ch], to achieve better
[pspp]
/
src
/
language
/
data-io
/
data-reader.c
diff --git
a/src/language/data-io/data-reader.c
b/src/language/data-io/data-reader.c
index c2da55046219aebedf77e90e78da2faa5a45794f..6458a82172b5b14c26958589a0c7671208e21a77 100644
(file)
--- a/
src/language/data-io/data-reader.c
+++ b/
src/language/data-io/data-reader.c
@@
-34,6
+34,7
@@
#include <language/lexer/lexer.h>
#include <language/line-buffer.h>
#include <libpspp/alloc.h>
#include <language/lexer/lexer.h>
#include <language/line-buffer.h>
#include <libpspp/alloc.h>
+#include <libpspp/assertion.h>
#include <libpspp/message.h>
#include <libpspp/str.h>
#include <libpspp/message.h>
#include <libpspp/str.h>
@@
-169,7
+170,7
@@
read_inline_record (struct dfm_reader *r)
getl_set_prompt_style (GETL_PROMPT_DATA);
}
getl_set_prompt_style (GETL_PROMPT_DATA);
}
- if (!
getl_read_line (NULL
))
+ if (!
lex_get_line_raw (
))
{
msg (SE, _("Unexpected end-of-file while reading data in BEGIN "
"DATA. This probably indicates "
{
msg (SE, _("Unexpected end-of-file while reading data in BEGIN "
"DATA. This probably indicates "
@@
-179,14
+180,15
@@
read_inline_record (struct dfm_reader *r)
return false;
}
return false;
}
- if (ds_length (
&getl_buf
) >= 8
- && !strncasecmp (
ds_cstr (&getl_buf
), "end data", 8))
+ if (ds_length (
lex_entire_line_ds()
) >= 8
+ && !strncasecmp (
lex_entire_line (
), "end data", 8))
{
{
- lex_
set_prog (ds_end (&getl_buf)
);
+ lex_
discard_line (
);
return false;
}
return false;
}
- ds_assign_string (&r->line, &getl_buf);
+ ds_assign_string (&r->line, lex_entire_line_ds () );
+
return true;
}
return true;
}
@@
-224,7
+226,7
@@
read_file_record (struct dfm_reader *r)
}
}
else
}
}
else
-
abort
();
+
NOT_REACHED
();
r->where.line_number++;
r->where.line_number++;
@@
-422,7
+424,7
@@
dfm_pop (struct dfm_reader *r)
/* Perform BEGIN DATA...END DATA as a procedure in itself. */
int
/* Perform BEGIN DATA...END DATA as a procedure in itself. */
int
-cmd_begin_data (
void
)
+cmd_begin_data (
struct dataset *ds
)
{
struct dfm_reader *r;
bool ok;
{
struct dfm_reader *r;
bool ok;
@@
-440,7
+442,7
@@
cmd_begin_data (void)
/* Input procedure reads from inline file. */
getl_set_prompt_style (GETL_PROMPT_DATA);
/* Input procedure reads from inline file. */
getl_set_prompt_style (GETL_PROMPT_DATA);
- ok = procedure (NULL, NULL);
+ ok = procedure (
ds,
NULL, NULL);
dfm_close_reader (r);
dfm_close_reader (r);