summaryrefslogtreecommitdiff
path: root/src/external_cache.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/external_cache.c')
-rw-r--r--src/external_cache.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/external_cache.c b/src/external_cache.c
index c1181dc..59c706a 100644
--- a/src/external_cache.c
+++ b/src/external_cache.c
@@ -90,7 +90,10 @@ static void external_cache_dump(int fd, int type)
static int external_cache_commit(struct nfct_handle *h, int fd)
{
- cache_commit(external, h, fd);
+ if (!cache_commit(external, h, fd)) {
+ dlog(LOG_NOTICE, "commit already in progress, skipping");
+ return LOCAL_RET_OK;
+ }
/* Keep the client socket open, we want synchronous commits. */
return LOCAL_RET_STOLEN;
}