projects
/
pspp-builds.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
9eb49ba
)
Partial fix for PR 12859.
author
Ben Pfaff
<blp@gnu.org>
Tue, 3 May 2005 06:46:03 +0000
(06:46 +0000)
committer
Ben Pfaff
<blp@gnu.org>
Tue, 3 May 2005 06:46:03 +0000
(06:46 +0000)
src/ChangeLog
patch
|
blob
|
history
src/data-list.c
patch
|
blob
|
history
diff --git
a/src/ChangeLog
b/src/ChangeLog
index 66c76f1349aa1a52752dec6642b6687404b5e871..f5c79c77c3583467105713c8bb2c8f01dc9f508f 100644
(file)
--- a/
src/ChangeLog
+++ b/
src/ChangeLog
@@
-1,3
+1,19
@@
+Mon May 2 23:45:01 2005 Ben Pfaff <blp@gnu.org>
+
+ Code improvements.
+
+ * data-list.c: (parse_fixed) Use lex_end_of_command().
+ (parse_free) Ditto.
+ (cmd_repeating_data) Set cont_end.num in right situations.
+ (parse_repeating_data) Remove redundant test.
+
+Mon May 2 23:37:19 2005 Ben Pfaff <blp@gnu.org>
+
+ Partial fix for PR 12859.
+
+ * data-list.c: (cmd_data_list) Add transformation properly in
+ vfm_source == NULL case.
+
Mon May 2 23:27:28 2005 Ben Pfaff <blp@gnu.org>
* lexer.c: (lex_error) Improve error messages.
Mon May 2 23:27:28 2005 Ben Pfaff <blp@gnu.org>
* lexer.c: (lex_error) Improve error messages.
diff --git
a/src/data-list.c
b/src/data-list.c
index 3d730939b3e4a854af4da91bda81639685af530c..1e9deb8006f613c501b9a108e4db8bcdc31dce8c 100644
(file)
--- a/
src/data-list.c
+++ b/
src/data-list.c
@@
-268,14
+268,9
@@
cmd_data_list (void)
if (vfm_source != NULL)
{
if (vfm_source != NULL)
{
- struct data_list_pgm *new_pgm;
-
dls->h.proc = data_list_trns_proc;
dls->h.free = data_list_trns_free;
dls->h.proc = data_list_trns_proc;
dls->h.free = data_list_trns_free;
-
- new_pgm = xmalloc (sizeof *new_pgm);
- memcpy (new_pgm, &dls, sizeof *new_pgm);
- add_transformation (&new_pgm->h);
+ add_transformation (&dls->h);
}
else
vfm_source = create_case_source (&data_list_source_class, dls);
}
else
vfm_source = create_case_source (&data_list_source_class, dls);
@@
-404,12
+399,7
@@
parse_fixed (struct data_list_pgm *dls)
}
else if (!dls->rec_cnt)
dls->rec_cnt = dls->last->rec;
}
else if (!dls->rec_cnt)
dls->rec_cnt = dls->last->rec;
- if (token != '.')
- {
- lex_error (_("expecting end of command"));
- return 0;
- }
- return 1;
+ return lex_end_of_command () == CMD_SUCCESS;
fail:
for (i = 0; i < fx.name_cnt; i++)
fail:
for (i = 0; i < fx.name_cnt; i++)
@@
-897,9
+887,7
@@
parse_free (struct dls_var_spec **first, struct dls_var_spec **last)
free (name);
}
free (name);
}
- if (token != '.')
- lex_error (_("expecting end of command"));
- return 1;
+ return lex_end_of_command () == CMD_SUCCESS;
}
/* Displays a table giving information on free-format variable parsing
}
/* Displays a table giving information on free-format variable parsing
@@
-1602,7
+1590,7
@@
cmd_repeating_data (void)
/* Calculate starts_end, cont_end if necessary. */
if (rpd->starts_end.num == 0 && rpd->starts_end.var == NULL)
rpd->starts_end.num = handle_get_record_width (fh);
/* Calculate starts_end, cont_end if necessary. */
if (rpd->starts_end.num == 0 && rpd->starts_end.var == NULL)
rpd->starts_end.num = handle_get_record_width (fh);
- if (rpd->cont_end.num == 0 && rpd->
starts
_end.var == NULL)
+ if (rpd->cont_end.num == 0 && rpd->
cont
_end.var == NULL)
rpd->cont_end.num = handle_get_record_width (fh);
/* Calculate length if possible. */
rpd->cont_end.num = handle_get_record_width (fh);
/* Calculate length if possible. */
@@
-1739,7
+1727,7
@@
parse_repeating_data (struct dls_var_spec **first, struct dls_var_spec **last)
else
{
msg (SE, _("SPSS-like or FORTRAN-like format "
else
{
msg (SE, _("SPSS-like or FORTRAN-like format "
- "specification expected after variable names."));
+
"specification expected after variable names."));
goto fail;
}
goto fail;
}
@@
-1747,11
+1735,6
@@
parse_repeating_data (struct dls_var_spec **first, struct dls_var_spec **last)
free (fx.name[i]);
free (fx.name);
}
free (fx.name[i]);
free (fx.name);
}
- if (token != '.')
- {
- lex_error (_("expecting end of command"));
- return 0;
- }
return 1;
return 1;