summaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend')
-rw-r--r--src/backend/taler-merchant-depositcheck.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/backend/taler-merchant-depositcheck.c b/src/backend/taler-merchant-depositcheck.c
index 7bf8a61c..7e25c902 100644
--- a/src/backend/taler-merchant-depositcheck.c
+++ b/src/backend/taler-merchant-depositcheck.c
@@ -288,9 +288,6 @@ shutdown_task (void *cls)
}
while (NULL != (c = c_head))
{
- enum GNUNET_OS_ProcessStatusType type;
- unsigned long code;
-
GNUNET_CONTAINER_DLL_remove (c_head,
c_tail,
c);
@@ -306,6 +303,10 @@ shutdown_task (void *cls)
}
if (NULL != c->process)
{
+ enum GNUNET_OS_ProcessStatusType type
+ = GNUNET_OS_PROCESS_UNKNOWN;
+ unsigned long code = 0;
+
GNUNET_break (0 ==
GNUNET_OS_process_kill (c->process,
SIGTERM));
@@ -658,11 +659,14 @@ select_work (void *cls)
GNUNET_SCHEDULER_shutdown ();
return;
}
+ if (retry)
+ return; /* nothing left */
retry = true;
continue;
case GNUNET_DB_STATUS_SUCCESS_ONE_RESULT:
default:
- return; /* wait for completion, then select more work. */
+ /* wait for async completion, then select more work. */
+ return;
}
}
}