From fba96e4a6e275b431b2b5b9d219bed0f515b5243 Mon Sep 17 00:00:00 2001 From: Thom Rawson Date: Mon, 19 Aug 2024 15:33:16 +0100 Subject: [PATCH] Fix disappearing cow bug. If an export is not allowed, we have to make sure the cows aren't removed from source herd still. --- inst/dust/cows.cpp | 5 +++++ src/cows.cpp | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/inst/dust/cows.cpp b/inst/dust/cows.cpp index a591f16..6c449cd 100644 --- a/inst/dust/cows.cpp +++ b/inst/dust/cows.cpp @@ -210,6 +210,11 @@ class cows { internal.import_E[i_dst] += internal.export_E[i_src]; internal.import_I[i_dst] += internal.export_I[i_src]; internal.import_R[i_dst] += internal.export_R[i_src]; + } else { + internal.export_S[i_src] = 0; + internal.export_E[i_src] = 0; + internal.export_I[i_src] = 0; + internal.export_R[i_src] = 0; } } } diff --git a/src/cows.cpp b/src/cows.cpp index fc1d9ce..8cfba97 100644 --- a/src/cows.cpp +++ b/src/cows.cpp @@ -212,6 +212,11 @@ class cows { internal.import_E[i_dst] += internal.export_E[i_src]; internal.import_I[i_dst] += internal.export_I[i_src]; internal.import_R[i_dst] += internal.export_R[i_src]; + } else { + internal.export_S[i_src] = 0; + internal.export_E[i_src] = 0; + internal.export_I[i_src] = 0; + internal.export_R[i_src] = 0; } } }