Line | Branch | Exec | Source |
---|---|---|---|
1 | /* | ||
2 | ** EPITECH PROJECT, 2023 | ||
3 | ** my_push_back_circled | ||
4 | ** File description: | ||
5 | ** Adds a node at the end of a linked list | ||
6 | */ | ||
7 | /** | ||
8 | * @file my_push_back_circled.c | ||
9 | * @brief The file containing the my_push_back_circled function | ||
10 | * @author Gianni TUERO | ||
11 | */ | ||
12 | |||
13 | #include "mylist.h" | ||
14 | |||
15 | 255299 | void my_push_back_circled(node_t **begin, void *data, type_t type) | |
16 | { | ||
17 | 255299 | node_t *new = malloc(sizeof(node_t)); | |
18 | 255299 | node_t *tmp = *begin; | |
19 | |||
20 | 255299 | new->data = data; | |
21 | 255299 | new->type = type; | |
22 |
2/2✓ Branch 0 taken 366 times.
✓ Branch 1 taken 254933 times.
|
255299 | if (*begin == NULL) { |
23 | 366 | new->prev = NULL; | |
24 | 366 | new->next = NULL; | |
25 | 366 | *begin = new; | |
26 | 366 | return; | |
27 | } | ||
28 |
4/4✓ Branch 0 taken 112122975 times.
✓ Branch 1 taken 366 times.
✓ Branch 2 taken 111868408 times.
✓ Branch 3 taken 254567 times.
|
112123341 | for (; tmp->next != NULL && tmp->next != *begin; tmp = tmp->next); |
29 | 254933 | tmp->next = new; | |
30 | 254933 | new->prev = tmp; | |
31 | 254933 | new->next = *begin; | |
32 | 254933 | (*begin)->prev = new; | |
33 | } | ||
34 |