Lines Matching refs:cw
131 static void compare_nodes(struct compare_walk *cw, XsNode *n1, XsNode *n2) in compare_nodes() argument
148 cw->compare_ok = false; in compare_nodes()
149 printf("Compare failure on '%s'\n", cw->path); in compare_nodes()
153 XsNode *oldparent = cw->parent_2; in compare_nodes()
154 cw->parent_2 = n2; in compare_nodes()
155 g_hash_table_foreach(n1->children, compare_child, cw); in compare_nodes()
157 cw->parent_2 = oldparent; in compare_nodes()
163 struct compare_walk *cw = opaque; in compare_child() local
166 XsNode *child2 = g_hash_table_lookup(cw->parent_2->children, childname); in compare_child()
167 int pathlen = strlen(cw->path); in compare_child()
170 cw->compare_ok = false; in compare_child()
171 printf("Child '%s' does not exist under '%s'\n", childname, cw->path); in compare_child()
175 strncat(cw->path, "/", sizeof(cw->path) - 1); in compare_child()
176 strncat(cw->path, childname, sizeof(cw->path) - 1); in compare_child()
178 compare_nodes(cw, child1, child2); in compare_child()
179 cw->path[pathlen] = '\0'; in compare_child()
184 struct compare_walk cw; in compare_trees() local
186 cw.path[0] = '\0'; in compare_trees()
187 cw.parent_2 = n2; in compare_trees()
188 cw.compare_ok = true; in compare_trees()
194 compare_nodes(&cw, n1, n2); in compare_trees()
195 return cw.compare_ok; in compare_trees()