# HG changeset patch # User meillo@marmaro.de # Date 1202893027 -3600 # Node ID e2048e56989158982cdc8bd88710195b7e94a220 # Parent 15e11eea1c66b0035d73e969baeb3a1151f27225 insertLast returns now new inserted node; very dumb implementation for action_times diff -r 15e11eea1c66 -r e2048e569891 actions.c --- a/actions.c Wed Feb 13 09:16:01 2008 +0100 +++ b/actions.c Wed Feb 13 09:57:07 2008 +0100 @@ -85,10 +85,16 @@ unsigned char action_times(struct Node* node) { struct Node* tp; + struct Node* last; unsigned char i; tp = node->down; for (i = 0; i < node->value; i++) { /* deep copy */ + last = insertLast(node, newNode(tp->name, tp->value)); + if (tp->down != NULL) { + last->down = newNode(tp->down->name, tp->down->value); + } + } return 0; } diff -r 15e11eea1c66 -r e2048e569891 baum.c --- a/baum.c Wed Feb 13 09:16:01 2008 +0100 +++ b/baum.c Wed Feb 13 09:57:07 2008 +0100 @@ -58,9 +58,10 @@ return node; } -void insertLast(struct Node* node, struct Node* insert) { +struct Node* insertLast(struct Node* node, struct Node* insert) { node = lastNode(node); node->right = insert; + return insert; } /* delete */ diff -r 15e11eea1c66 -r e2048e569891 baum.h --- a/baum.h Wed Feb 13 09:16:01 2008 +0100 +++ b/baum.h Wed Feb 13 09:57:07 2008 +0100 @@ -10,7 +10,7 @@ struct Node* nextNode(struct Node* node); struct Node* lastNode(struct Node* node); -void insertLast(struct Node* node, struct Node* insert); +struct Node* insertLast(struct Node* node, struct Node* insert); struct Node {