Skip to content
This repository was archived by the owner on Jun 8, 2023. It is now read-only.

Commit 9b474e9

Browse files
authored
Only one WATCH statement can be triggered at a time (#63)
1 parent 42bb3c3 commit 9b474e9

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

src/mod2c_core/nocpout.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3115,6 +3115,7 @@ static void emit_nrn_watch_check_code() {
31153115
"#if NRN_PRCELLSTATE\n"
31163116
" _v_unused = v;\n"
31173117
"#endif\n"
3118+
" bool _untriggered = true;\n"
31183119
);
31193120

31203121
iw = 0; /* 0 unused Datum but for consistent size with NEURON... */
@@ -3126,9 +3127,10 @@ static void emit_nrn_watch_check_code() {
31263127

31273128
par2par = items_as_string(par1, par2);
31283129
sprintf(buf, "\n"
3129-
" if (_watch_array(%d)&2) {\n"
3130+
" if (_watch_array(%d)&2 && _untriggered) {\n"
31303131
" if %s {\n"
31313132
" if ((_watch_array(%d)&1) == 0) {\n"
3133+
" _untriggered = false;\n"
31323134
" #if NET_RECEIVE_BUFFERING\n"
31333135
" _net_send_buffering(_ml->_net_send_buffer, 0, _tqitem, 0, _ppvar[1*_STRIDE], t + 0.0 , %s );\n"
31343136
" #else\n"

0 commit comments

Comments
 (0)