Lines Matching refs:node
1325 addEnvironmentInfo(EnvironmentInfo **root, EnvironmentInfo* parent, EnvironmentInfo *node)
1329 *root = node;
1330 node->parent = parent;
1334 switch (_compareCompany(node->company, r->company)) {
1336 return addEnvironmentInfo(&r->prev, r, node);
1338 return addEnvironmentInfo(&r->next, r, node);
1343 switch (_compareTag(node->tag, r->tag)) {
1345 return addEnvironmentInfo(&r->next, r, node);
1347 return addEnvironmentInfo(&r->prev, r, node);
1352 if (node->internalSortKey < r->internalSortKey) {
1353 // Replace the current node
1354 node->parent = r->parent;
1355 if (node->parent) {
1356 if (node->parent->prev == r) {
1357 node->parent->prev = node;
1358 } else if (node->parent->next == r) {
1359 node->parent->next = node;
1362 freeEnvironmentInfo(node);
1366 // If node has no parent, then it is the root.
1367 *root = node;
1370 node->next = r->next;
1371 node->prev = r->prev;
1373 debug(L"# replaced %s/%s/%i in tree\n", node->company, node->tag, node->internalSortKey);
1376 debug(L"# not adding %s/%s/%i to tree\n", node->company, node->tag, node->internalSortKey);