2001-03-26
2001-03-26 16:37:10 by Martin Stjernholm <mast@lysator.liu.se>
-
b56de011faa8869a06926a0dc311ff878be77d95
(17 lines)
(+8/-9)
[
Show
| Annotate
]
Branch: 5.2
Fixed incorrect use of Parser.HTML.parse_tag_args in Frame.propagate_tag.
Fixes the argument parsing problem in [bug 1168 (#1168)].
Rev: server/etc/modules/RXML.pmod/module.pmod:1.145
2:
//!
//! Created 1999-07-30 by Martin Stjernholm.
//!
- //! $Id: module.pmod,v 1.144 2001/03/23 22:49:43 mast Exp $
+ //! $Id: module.pmod,v 1.145 2001/03/26 16:37:10 mast Exp $
//! Kludge: Must use "RXML.refs" somewhere for the whole module to be
//! loaded correctly.
2056: Inside #if defined(MODULE_DEBUG)
if (!stringp (this_object()->raw_tag_text))
fatal_error ("raw_tag_text must have a string value.\n");
#endif
- sscanf (this_object()->raw_tag_text, "%*[^ \t\n\r]%s", string str);
+ if (mixed err = catch {
+ Parser_HTML()->_set_tag_callback (lambda (object p) {
+ args = p->tag_args();
+ throw (0);
+ })->finish (this_object()->raw_tag_text);
+ }) throw (err);
#ifdef DEBUG
- if (!str || !sizeof (str) || str[-1] != '>')
- fatal_error ("Failed to parse tag args from %O.\n",
- this_object()->raw_tag_text);
- #endif
- args = Parser_HTML()->parse_tag_args (str);
- #ifdef DEBUG
+
if (!mappingp (args)) fatal_error ("Failed to parse tag args from %O.\n",
this_object()->raw_tag_text);
#endif
4132:
inherit Type;
constant name = "*";
constant conversion_type = 0;
- constant free_text = 1; // FIXME: Temporary measure.
+
mixed encode (mixed val, void|Type from)
{