summaryrefslogtreecommitdiff
path: root/src/wasm-binary-reader-ast.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/wasm-binary-reader-ast.c')
-rw-r--r--src/wasm-binary-reader-ast.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/wasm-binary-reader-ast.c b/src/wasm-binary-reader-ast.c
index 587dc709..4aec583f 100644
--- a/src/wasm-binary-reader-ast.c
+++ b/src/wasm-binary-reader-ast.c
@@ -585,12 +585,14 @@ static WasmResult on_br_table_expr(uint32_t num_targets,
uint32_t default_target_depth,
void* user_data) {
WasmContext* ctx = user_data;
- WasmExpr *result, *key;
+ WasmExpr *result, *expr, *key;
CHECK_RESULT(pop_expr(ctx, &key));
+ CHECK_RESULT(pop_expr(ctx, &expr));
CHECK_ALLOC_NULL(result = wasm_new_br_table_expr(ctx->allocator));
CHECK_ALLOC(wasm_reserve_vars(ctx->allocator, &result->br_table.targets,
num_targets));
- result->br_table.expr = key;
+ result->br_table.key = key;
+ result->br_table.expr = expr;
result->br_table.targets.size = num_targets;
uint32_t i;
for (i = 0; i < num_targets; ++i) {