diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2013-11-12 10:39:33 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2013-11-12 14:47:15 +0100 |
commit | f5923be4c6c80b3266db74cd338ace229d077ee1 (patch) | |
tree | 8757d6a8c5ea70a4cf066c43f960dfadbd2bfab3 /common | |
parent | b763f017280fc114d2293682a28ed80e9ed597ea (diff) | |
download | barebox-f5923be4c6c80b3266db74cd338ace229d077ee1.tar.gz barebox-f5923be4c6c80b3266db74cd338ace229d077ee1.tar.xz |
hush: refactor reserved_word()
Save indentation level for easier readability.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'common')
-rw-r--r-- | common/hush.c | 64 |
1 files changed, 32 insertions, 32 deletions
diff --git a/common/hush.c b/common/hush.c index d844e74587..abe2ceda07 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; |