Skip to content

Commit cdd2ac2

Browse files
committed
fix(call): Duplicate CANCEL issue when CANCEL ALL
* Fixed the problem that the program was canceled in duplicate by the recurrence function and loop processing.
1 parent 196ff43 commit cdd2ac2

File tree

1 file changed

+2
-4
lines changed

1 file changed

+2
-4
lines changed

libcob/call.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -316,10 +316,8 @@ cob_cancel_call_stack_list (struct call_stack_list *p)
316316
if (p->children) {
317317
cob_cancel_call_stack_list (p->children);
318318
}
319-
struct call_stack_list *s = p->sister;
320-
while (s != NULL) {
321-
cob_cancel_call_stack_list (s);
322-
s = s->sister;
319+
if (p->sister) {
320+
cob_cancel_call_stack_list (p->sister);
323321
}
324322
}
325323

0 commit comments

Comments
 (0)