summaryrefslogtreecommitdiffstats
path: root/common/hush.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2013-11-12 10:39:33 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2013-11-12 14:47:15 +0100
commitf5923be4c6c80b3266db74cd338ace229d077ee1 (patch)
tree8757d6a8c5ea70a4cf066c43f960dfadbd2bfab3 /common/hush.c
parentb763f017280fc114d2293682a28ed80e9ed597ea (diff)
downloadbarebox-f5923be4c6c80b3266db74cd338ace229d077ee1.tar.gz
hush: refactor reserved_word()
Save indentation level for easier readability. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'common/hush.c')
-rw-r--r--common/hush.c64
1 files changed, 32 insertions, 32 deletions
diff --git a/common/hush.c b/common/hush.c
index d844e74..abe2ced 100644
--- a/common/hush.c
+++ b/common/hush.c
@@ -1201,52 +1201,52 @@ static int reserved_word(o_string *dest, struct p_context *ctx)
for (i = 0; i < ARRAY_SIZE(reserved_list); i++) {
r = &reserved_list[i];
- if (strcmp(dest->data, r->literal) == 0) {
-
- debug("found reserved word %s, code %d\n",r->literal,r->code);
+ if (strcmp(dest->data, r->literal))
+ continue;
- if (r->flag & FLAG_START) {
- struct p_context *new = xmalloc(sizeof(struct p_context));
+ debug("found reserved word %s, code %d\n",r->literal,r->code);
- debug("push stack\n");
+ if (r->flag & FLAG_START) {
+ struct p_context *new = xmalloc(sizeof(struct p_context));
- if (ctx->w == RES_IN || ctx->w == RES_FOR) {
- syntax();
- free(new);
- ctx->w = RES_SNTX;
- b_reset(dest);
+ debug("push stack\n");
- return 1;
- }
- *new = *ctx; /* physical copy */
- initialize_context(ctx);
- ctx->stack = new;
- } else if (ctx->w == RES_NONE || !(ctx->old_flag & (1 << r->code))) {
- syntax_unexpected_token(r->literal);
+ if (ctx->w == RES_IN || ctx->w == RES_FOR) {
+ syntax();
+ free(new);
ctx->w = RES_SNTX;
b_reset(dest);
+
return 1;
}
+ *new = *ctx; /* physical copy */
+ initialize_context(ctx);
+ ctx->stack = new;
+ } else if (ctx->w == RES_NONE || !(ctx->old_flag & (1 << r->code))) {
+ syntax_unexpected_token(r->literal);
+ ctx->w = RES_SNTX;
+ b_reset(dest);
+ return 1;
+ }
- ctx->w = r->code;
- ctx->old_flag = r->flag;
+ ctx->w = r->code;
+ ctx->old_flag = r->flag;
- if (ctx->old_flag & FLAG_END) {
- struct p_context *old;
+ if (ctx->old_flag & FLAG_END) {
+ struct p_context *old;
- debug("pop stack\n");
+ debug("pop stack\n");
- done_pipe(ctx,PIPE_SEQ);
- old = ctx->stack;
- old->child->group = ctx->list_head;
- *ctx = *old; /* physical copy */
- free(old);
- }
+ done_pipe(ctx,PIPE_SEQ);
+ old = ctx->stack;
+ old->child->group = ctx->list_head;
+ *ctx = *old; /* physical copy */
+ free(old);
+ }
- b_reset(dest);
+ b_reset(dest);
- return 1;
- }
+ return 1;
}
return 0;