From 18e9624c1c5601e0ec4cb2d2308b41a8f5b4f50e Mon Sep 17 00:00:00 2001 From: Aliaksei Chapyzhenka Date: Sun, 10 Nov 2019 17:59:29 -0800 Subject: [PATCH] fixes #8 ; onTrigger return (time, value) --- vcd_spans.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/vcd_spans.c b/vcd_spans.c index 5a633b3..8aa7e47 100644 --- a/vcd_spans.c +++ b/vcd_spans.c @@ -67,12 +67,14 @@ int varIdSpan(vcd_parser_t* state, const unsigned char* p, const unsigned char* int idSpan(vcd_parser_t* state, const unsigned char* p, const unsigned char* endp) { napi_env env = state->napi_env; if (stringEq((state->trigger), p, endp)) { - napi_value undefined, eventName, eventPayload, return_val; + napi_value undefined, eventName, eventPayload1, eventPayload2, return_val; ASSERT(undefined, napi_get_undefined(env, &undefined)) - ASSERT(eventName, napi_create_string_latin1(env, state->trigger, NAPI_AUTO_LENGTH, &eventName)) - ASSERT(eventPayload, napi_create_int32(env, state->time, &eventPayload)) - napi_value* argv[] = { &eventName, &eventPayload }; - ASSERT(state->triee, napi_call_function(env, undefined, state->triee, 2, *argv, &return_val)) + ASSERT(eventName, napi_create_string_latin1(env, (char*)p, (endp - p - 1), &eventName)) + ASSERT(eventPayload1, napi_create_int32(env, state->time, &eventPayload1)) + ASSERT(eventPayload2, napi_create_int32(env, state->command, &eventPayload2)) + napi_value* argv[] = { &eventName, &eventPayload1, &eventPayload2 }; + ASSERT(state->triee, napi_call_function(env, undefined, state->triee, 3, *argv, &return_val)) + // printf("{%.*s}", (int)(endp - p - 1), p); } return 0; }