Lines Matching full:node
173 XdgGlobHashNode *node;
181 node = _xdg_glob_hash_node_new ();
182 node->character = character;
183 node->next = glob_hash_node;
184 glob_hash_node = node;
188 node = glob_hash_node;
198 node = prev_node->next;
200 while (node != NULL)
202 if (character < node->character)
204 node = _xdg_glob_hash_node_new ();
205 node->character = character;
206 node->next = prev_node->next;
207 prev_node->next = node;
212 else if (character == node->character)
217 prev_node = node;
218 node = node->next;
223 node = _xdg_glob_hash_node_new ();
224 node->character = character;
225 node->next = prev_node->next;
226 prev_node->next = node;
233 if (node->mime_type)
235 if (strcmp (node->mime_type, mime_type))
240 child = node->child;
258 child->next = node->child;
259 node->child = child;
265 node->mime_type = strdup (mime_type);
266 node->weight = weight;
271 node->child = _xdg_glob_hash_insert_ucs4 (node->child, text, mime_type, weight);
283 XdgGlobHashNode *node;
289 node = _xdg_glob_hash_insert_ucs4 (glob_hash_node, unitext, mime_type, weight);
291 return node;
308 XdgGlobHashNode *node;
318 for (node = glob_hash_node; node && character >= node->character; node = node->next)
320 if (character == node->character)
326 n = _xdg_glob_hash_node_lookup_file_name (node->child,
335 if (node->mime_type)
337 mime_types[n].mime = node->mime_type;
338 mime_types[n].weight = node->weight;
341 node = node->child;
342 while (n < n_mime_types && node && node->character == 0)
344 if (node->mime_type)
346 mime_types[n].mime = node->mime_type;
347 mime_types[n].weight = node->weight;
350 node = node->next;
444 _xdg_glob_hash_free_nodes (XdgGlobHashNode *node)
446 if (node)
448 if (node->child)
449 _xdg_glob_hash_free_nodes (node->child);
450 if (node->next)
451 _xdg_glob_hash_free_nodes (node->next);
452 if (node->mime_type)
453 free ((void *) node->mime_type);
454 free (node);