From 9ffd34e9309c6c538093b82ccaebb9a19c00308d Mon Sep 17 00:00:00 2001
From: Dirk Zimoch <dirk.zimoch@psi.ch>
Date: Mon, 14 Sep 2015 17:40:02 +0200
Subject: [PATCH] new policy: conflict between test versions and explicit
 versions, still no conflict between test versions and implicit loaded
 versions with +

---
 require.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/require.c b/require.c
index 84f82eff..2b19cd21 100644
--- a/require.c
+++ b/require.c
@@ -468,7 +468,10 @@ static int compareVersions(const char* request, const char* found)
     {
         if (requireDebug)
             printf("require: compareVersions: TESTVERS numeric requested, test version found\n");
-        return TESTVERS;
+        if(request[strlen(request)-1] == '+')
+            return TESTVERS;
+        else
+            return MISMATCH;
     }
     if (found_major < req_major)
     {
@@ -868,8 +871,7 @@ static int require_priv(const char* module, const char* version, const char* arg
                 printf ("Module %s version %s already loaded\n", module, loaded);
                 break;
             default:
-                printf("Conflict between requested %s version %s\n"
-                    "and already loaded version %s.\n",
+                printf("Conflict between requested %s version %s and already loaded version %s.\n",
                     module, version, loaded);
                 return -1;
         }
-- 
GitLab