diff options
author | Sergey Poznyakoff <gray@gnu.org> | 2016-03-02 18:33:23 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org> | 2016-03-02 18:47:28 +0200 |
commit | c767932556198cb064e7552bea14cc3563a114d0 (patch) | |
tree | 15e1ff9d07c07ab3e4a7308804f12ce700c2d7db /src | |
parent | 801656d6ae9b6c5cb199b2e53001ecaac41db4ae (diff) | |
download | pies-c767932556198cb064e7552bea14cc3563a114d0.tar.gz pies-c767932556198cb064e7552bea14cc3563a114d0.tar.bz2 |
Bugfixes
* src/comp.c (component_verify): Fix stdout redirection check.
* src/meta1parse.c (meta1_translate_node): Skip simple statements.
(meta1_translate_node): Allocate comp->dir
* doc/pies.texi: Use @example instead of @smallexample
Diffstat (limited to 'src')
-rw-r--r-- | src/comp.c | 18 | ||||
-rw-r--r-- | src/meta1parse.c | 6 |
2 files changed, 16 insertions, 8 deletions
@@ -665,9 +665,15 @@ component_verify (struct component *comp, grecs_locus_t *locus) } - - if (comp->mode != pies_comp_exec - && comp->redir[RETR_OUT].type != redir_null) + + switch (comp->mode) { - COMPERR (grecs_error, - "%s", _("stdout redirection invalid in this mode")); - comp->redir[RETR_OUT].type = redir_null; + case pies_comp_accept: + case pies_comp_inetd: + if (comp->redir[RETR_OUT].type != redir_null) + { + COMPERR (grecs_error, + "%s", _("stdout redirection invalid in this mode")); + comp->redir[RETR_OUT].type = redir_null; + } + default: + break; } diff --git a/src/meta1parse.c b/src/meta1parse.c index 4b2fccb..528a80a 100644 --- a/src/meta1parse.c +++ b/src/meta1parse.c @@ -297,3 +297,5 @@ meta1_translate_node (struct grecs_node *node) int err = 0; - + + if (node->type != grecs_node_block) + return 0; comp = component_create (node->ident); @@ -311,3 +313,3 @@ meta1_translate_node (struct grecs_node *node) comp->privs.allgroups = 1; - comp->dir = META1_QUEUE_DIR (); + comp->dir = grecs_strdup (META1_QUEUE_DIR ()); comp->redir[RETR_ERR].type = redir_file; |