aboutsummaryrefslogtreecommitdiffhomepage
path: root/exec.cpp
diff options
context:
space:
mode:
authorGravatar ridiculousfish <corydoras@ridiculousfish.com>2012-08-26 22:42:29 -0700
committerGravatar ridiculousfish <corydoras@ridiculousfish.com>2012-08-26 22:42:29 -0700
commit96046ffd30431492a29342f3495e9c31859c0c20 (patch)
treef086b316f4f742fa37b682a90fbdc19d2073e1b7 /exec.cpp
parentb5e92a831bc151c073a48890628cff80964c9e61 (diff)
First stab at getting rid of the ugly state1, state2 properties of block_t
Diffstat (limited to 'exec.cpp')
-rw-r--r--exec.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/exec.cpp b/exec.cpp
index 9b696fdc..f7ab4970 100644
--- a/exec.cpp
+++ b/exec.cpp
@@ -758,11 +758,9 @@ void exec( parser_t &parser, job_t *j )
debug( 0, _( L"Unknown function '%ls'" ), p->argv0() );
break;
}
- parser.push_block( shadows?FUNCTION_CALL:FUNCTION_CALL_NO_SHADOW );
-
- parser.current_block->state2<process_t *>() = p;
- parser.current_block->state1<wcstring>() = p->argv0();
-
+ function_block_t *newv = new function_block_t(p, p->argv0(), shadows);
+ parser.push_block( newv );
+
/*
set_argv might trigger an event