[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[6816] parsetexi update
From: |
Gavin D. Smith |
Subject: |
[6816] parsetexi update |
Date: |
Mon, 30 Nov 2015 14:19:18 +0000 |
Revision: 6816
http://svn.sv.gnu.org/viewvc/?view=rev&root=texinfo&revision=6816
Author: gavin
Date: 2015-11-30 14:19:17 +0000 (Mon, 30 Nov 2015)
Log Message:
-----------
parsetexi update
Modified Paths:
--------------
trunk/parsetexi/end_line.c
trunk/parsetexi/extra.c
Modified: trunk/parsetexi/end_line.c
===================================================================
--- trunk/parsetexi/end_line.c 2015-11-30 13:17:07 UTC (rev 6815)
+++ trunk/parsetexi/end_line.c 2015-11-30 14:19:17 UTC (rev 6816)
@@ -163,10 +163,11 @@
line_args = new_element (ET_NONE);
+ cmd = line_command->cmd;
if (arg->contents.number == 0)
{
/*command_errorf ("@%s missing argument",
- command_name (line_command->cmd));*/
+ command_name (cmd));*/
return 0;
}
@@ -193,18 +194,21 @@
{
/* Error - too many arguments. */
line_errorf ("superfluous argument to @%s",
- command_name (line_command->cmd));
+ command_name (cmd));
+ break;
}
}
+
if (!argarg)
{
- abort();
+ command_errorf ("@%s missing argument", command_name(cmd));
+ add_extra_string (line_command, "missing_argument", "1");
+ return 0;
}
if (argarg->text.end == 0)
return 0; // 5519
- cmd = line_command->cmd;
line = argarg->text.text;
switch (cmd)
@@ -1148,22 +1152,26 @@
/* Check if in multitable. */
if (!current->parent || current->parent->cmd != CM_multitable)
{
- abort ();
+ command_error
+ ("@columnfractions only meaningful on a @multitable line");
}
+ else
+ {
+ // pop and check context stack
+ //pop_context (); /* ct_line */;
- // pop and check context stack
+ current = current->parent;
- current = current->parent;
+ if (misc_args = lookup_extra_key (misc_cmd, "misc_args"))
+ {
+ add_extra_key_misc_args (current, "columnfractions",
+ misc_args->value);
+ }
- if (misc_args = lookup_extra_key (misc_cmd, "misc_args"))
- {
- add_extra_key_misc_args (current, "columnfractions",
- misc_args->value);
+ before_item = new_element (ET_before_item);
+ add_to_element_contents (current, before_item);
+ current = before_item;
}
-
- before_item = new_element (ET_before_item);
- add_to_element_contents (current, before_item);
- current = before_item;
}
else if (command_data(cmd).flags & CF_root) /* 3380 */
{
Modified: trunk/parsetexi/extra.c
===================================================================
--- trunk/parsetexi/extra.c 2015-11-30 13:17:07 UTC (rev 6815)
+++ trunk/parsetexi/extra.c 2015-11-30 14:19:17 UTC (rev 6816)
@@ -77,6 +77,7 @@
void
add_extra_key_misc_args (ELEMENT *e, char *key, ELEMENT *value)
{
+ if (!value) return;
add_extra_key (e, key, value);
e->extra[e->extra_number - 1].type = extra_misc_args;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [6816] parsetexi update,
Gavin D. Smith <=