]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
wrong logic for cache merge 169/head
authorOlivier Beytrison <olivier@heliosnet.org>
Thu, 17 Jan 2013 07:12:38 +0000 (08:12 +0100)
committerOlivier Beytrison <olivier@heliosnet.org>
Thu, 17 Jan 2013 07:12:38 +0000 (08:12 +0100)
src/modules/rlm_cache/rlm_cache.c

index f02023eb79adfc8f17166de193fc7f77ef5327b4..364b50ca6e7375530e1447c42a43d26ca8de10e5 100644 (file)
@@ -346,9 +346,9 @@ static rlm_cache_entry_t *cache_add(rlm_cache_t *inst, REQUEST *request,
                 *        - Map src and dst attributes differ
                 */
                to_req = NULL;
-               if (!merge || !map->src->da || 
+               if (merge && ( !map->src->da || 
                    (map->src->list != map->dst->list) ||
-                   (map->src->da != map->dst->da)) {
+                   (map->src->da != map->dst->da))) {
                        context = request;
                        /*
                         *      It's ok if the list isn't valid here...