LCOV - code coverage report
Current view: top level - common - lists.c (source / functions) Hit Total Coverage
Test: Pacemaker code coverage Lines: 7 7 100.0 %
Date: 2024-05-07 11:09:47 Functions: 1 1 100.0 %

          Line data    Source code
       1             : /*
       2             :  * Copyright 2004-2022 the Pacemaker project contributors
       3             :  *
       4             :  * The version control history for this file may have further details.
       5             :  *
       6             :  * This source code is licensed under the GNU Lesser General Public License
       7             :  * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
       8             :  */
       9             : 
      10             : #include <crm_internal.h>
      11             : #include <crm/common/lists_internal.h>
      12             : 
      13             : GList*
      14           5 : pcmk__subtract_lists(GList *from, const GList *items, GCompareFunc cmp)
      15             : {
      16           5 :     GList *result = g_list_copy(from);
      17             : 
      18          13 :     for (const GList *item = items; item != NULL; item = item->next) {
      19           8 :         GList *match = g_list_find_custom(result, item->data, cmp);
      20             : 
      21           8 :         if (match != NULL) {
      22           6 :             result = g_list_remove(result, match->data);
      23             :         }
      24             :     }
      25             : 
      26           5 :     return result;
      27             : }

Generated by: LCOV version 1.14