]> git.ipfire.org Git - location/libloc.git/commitdiff
network: Add more debugging output to stacks
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 12 Nov 2020 19:59:22 +0000 (19:59 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 12 Nov 2020 19:59:22 +0000 (19:59 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/network.c

index f7071a604ed9db9a01644caafd9f9175e58ec4df..d41e87300acf5f75b155972a966e3b6140d99133 100644 (file)
@@ -1088,8 +1088,12 @@ LOC_EXPORT int loc_network_list_push(struct loc_network_list* list, struct loc_n
                return 0;
 
        // Check if we have space left
-       if (list->size == list->max_size)
+       if (list->size == list->max_size) {
+               ERROR(list->ctx, "%p: Could not push network onto the stack: Stack full\n", list);
                return -ENOMEM;
+       }
+
+       DEBUG(list->ctx, "%p: Pushing network %p onto stack\n", list, network);
 
        list->list[list->size++] = loc_network_ref(network);
 
@@ -1098,10 +1102,16 @@ LOC_EXPORT int loc_network_list_push(struct loc_network_list* list, struct loc_n
 
 LOC_EXPORT struct loc_network* loc_network_list_pop(struct loc_network_list* list) {
        // Return nothing when empty
-       if (loc_network_list_empty(list))
+       if (loc_network_list_empty(list)) {
+               DEBUG(list->ctx, "%p: Popped empty stack\n", list);
                return NULL;
+       }
 
-       return list->list[--list->size];
+       struct loc_network* network = list->list[--list->size];
+
+       DEBUG(list->ctx, "%p: Popping network %p from stack\n", list, network);
+
+       return network;
 }
 
 LOC_EXPORT int loc_network_list_contains(struct loc_network_list* list, struct loc_network* network) {