X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=drivers%2Ffirewire%2Ffw-topology.c;h=5e204713002d843d34dcc19aecec530d00ea577a;hb=40321fd21c1eb1fb1886eea73b5f87c5e41ff2fb;hp=c1b81077c4a82b6e15bc528b314dfa87a73e1c35;hpb=d65d830ca06040ffe6a35ce7cb06ee642ddbd6a8;p=deliverable%2Flinux.git diff --git a/drivers/firewire/fw-topology.c b/drivers/firewire/fw-topology.c index c1b81077c4a8..5e204713002d 100644 --- a/drivers/firewire/fw-topology.c +++ b/drivers/firewire/fw-topology.c @@ -413,7 +413,7 @@ static void update_tree(struct fw_card *card, struct fw_node *root) { struct list_head list0, list1; - struct fw_node *node0, *node1; + struct fw_node *node0, *node1, *next1; int i, event; INIT_LIST_HEAD(&list0); @@ -485,7 +485,9 @@ update_tree(struct fw_card *card, struct fw_node *root) } node0 = fw_node(node0->link.next); - node1 = fw_node(node1->link.next); + next1 = fw_node(node1->link.next); + fw_node_put(node1); + node1 = next1; } }