diff options
author | ridiculousfish <corydoras@ridiculousfish.com> | 2011-12-26 19:18:46 -0800 |
---|---|---|
committer | ridiculousfish <corydoras@ridiculousfish.com> | 2011-12-26 19:18:46 -0800 |
commit | 8d2f107d61a8b0e099ab9a59b8a32c236da5a5fc (patch) | |
tree | 89f718ab74f8400332534aee237c6f925348f05c /xdgmimealias.cpp | |
parent | 3f16ace6784caab54fb054836ee93902e9701913 (diff) |
Some changes to migrate towards C++ and a multithreaded model
Diffstat (limited to 'xdgmimealias.cpp')
-rw-r--r-- | xdgmimealias.cpp | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/xdgmimealias.cpp b/xdgmimealias.cpp index 35ce8907..2b47f671 100644 --- a/xdgmimealias.cpp +++ b/xdgmimealias.cpp @@ -47,7 +47,7 @@ typedef struct XdgAlias XdgAlias; -struct XdgAlias +struct XdgAlias { char *alias; char *mime_type; @@ -64,7 +64,7 @@ _xdg_mime_alias_list_new (void) { XdgAliasList *list; - list = malloc (sizeof (XdgAliasList)); + list = (XdgAliasList *)malloc (sizeof (XdgAliasList)); list->aliases = NULL; list->n_aliases = 0; @@ -72,7 +72,7 @@ _xdg_mime_alias_list_new (void) return list; } -void +void _xdg_mime_alias_list_free (XdgAliasList *list) { int i; @@ -107,7 +107,7 @@ _xdg_mime_alias_list_lookup (XdgAliasList *list, key.alias = (char *)alias; key.mime_type = 0; - entry = bsearch (&key, list->aliases, list->n_aliases, + entry = (XdgAlias *)bsearch (&key, list->aliases, list->n_aliases, sizeof (XdgAlias), alias_entry_cmp); if (entry) return entry->mime_type; @@ -132,7 +132,7 @@ _xdg_mime_alias_read_from_file (XdgAliasList *list, /* FIXME: Not UTF-8 safe. Doesn't work if lines are greater than 255 chars. * Blah */ alloc = list->n_aliases + 16; - list->aliases = realloc (list->aliases, alloc * sizeof (XdgAlias)); + list->aliases = (XdgAlias *)realloc (list->aliases, alloc * sizeof (XdgAlias)); while (fgets (line, 255, file) != NULL) { char *sep; @@ -147,20 +147,20 @@ _xdg_mime_alias_read_from_file (XdgAliasList *list, if (list->n_aliases == alloc) { alloc <<= 1; - list->aliases = realloc (list->aliases, + list->aliases = (XdgAlias *)realloc (list->aliases, alloc * sizeof (XdgAlias)); } list->aliases[list->n_aliases].alias = strdup (line); list->aliases[list->n_aliases].mime_type = strdup (sep); list->n_aliases++; } - list->aliases = realloc (list->aliases, + list->aliases = (XdgAlias *)realloc (list->aliases, list->n_aliases * sizeof (XdgAlias)); - fclose (file); - + fclose (file); + if (list->n_aliases > 1) - qsort (list->aliases, list->n_aliases, + qsort (list->aliases, list->n_aliases, sizeof (XdgAlias), alias_entry_cmp); } @@ -174,7 +174,7 @@ _xdg_mime_alias_list_dump (XdgAliasList *list) { for (i = 0; i < list->n_aliases; i++) { - printf ("%s %s\n", + printf ("%s %s\n", list->aliases[i].alias, list->aliases[i].mime_type); } |