From 1e9832ed8e5eeacafe68d1e9142e33752caa3340 Mon Sep 17 00:00:00 2001
From: ralfulrich <ralf.ulrich@kit.edu>
Date: Wed, 30 Jan 2019 12:07:24 +0100
Subject: [PATCH] added Swap, fixed Copy

---
 Processes/Sibyll/SibStack.h | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/Processes/Sibyll/SibStack.h b/Processes/Sibyll/SibStack.h
index 22b446c57..11a5bb2bf 100644
--- a/Processes/Sibyll/SibStack.h
+++ b/Processes/Sibyll/SibStack.h
@@ -70,8 +70,15 @@ namespace corsika::process::sibyll {
     }
 
     void Copy(const int i1, const int i2) {
-      s_plist_.llist[i1] = s_plist_.llist[i2];
-      s_plist_.p[3][i1] = s_plist_.p[3][i2];
+      s_plist_.llist[i2] = s_plist_.llist[i1];
+      for (int i=0; i<5; ++i)
+	s_plist_.p[i][i2] = s_plist_.p[i][i1];
+    }
+
+    void Swap(const int i1, const int i2) {
+      std::swap(s_plist_.llist[i1], s_plist_.llist[i2]);
+      for (int i=0; i<5; ++i)
+	std::swap(s_plist_.p[i][i1], s_plist_.p[i][i2]);
     }
 
   protected:
-- 
GitLab