diff options
author | Ting-Wei Lan <lantw44@gmail.com> | 2013-09-06 18:19:55 +0800 |
---|---|---|
committer | LAN-TW <lantw44@gmail.com> | 2013-09-06 18:19:55 +0800 |
commit | 3defbdd1594ff2a8d1c1fa7a523f6cf77d8f697a (patch) | |
tree | 4bacd4b442bd7098933343501e307c43e12c3bb5 | |
parent | bc9f29cb8a6588a8e9d20cfbc563de4353a5c1fc (diff) | |
download | gsoc2013-libgnome-autoar-3defbdd1594ff2a8d1c1fa7a523f6cf77d8f697a.tar.gz gsoc2013-libgnome-autoar-3defbdd1594ff2a8d1c1fa7a523f6cf77d8f697a.tar.zst gsoc2013-libgnome-autoar-3defbdd1594ff2a8d1c1fa7a523f6cf77d8f697a.zip |
Prevent using AUTOAR_*_LAST constant outside autoar-format-filter.[ch]
-rw-r--r-- | gnome-autoar/autoar-format-filter.c | 44 | ||||
-rw-r--r-- | gnome-autoar/autoar-format-filter.h | 2 | ||||
-rw-r--r-- | gnome-autoar/autoar-gtk.c | 10 | ||||
-rw-r--r-- | gnome-autoar/autoar-pref.c | 4 |
4 files changed, 38 insertions, 22 deletions
diff --git a/gnome-autoar/autoar-format-filter.c b/gnome-autoar/autoar-format-filter.c index 3010664..97e0233 100644 --- a/gnome-autoar/autoar-format-filter.c +++ b/gnome-autoar/autoar-format-filter.c @@ -104,6 +104,12 @@ static AutoarFilterDescription autoar_filter_description[] = { "application/x-lrzip", "Long Range ZIP (lrzip)" } }; +AutoarFormat +autoar_format_last (void) +{ + return AUTOAR_FORMAT_LAST; +} + gboolean autoar_format_is_valid (AutoarFormat format) { @@ -113,28 +119,28 @@ autoar_format_is_valid (AutoarFormat format) const char* autoar_format_get_mime_type (AutoarFormat format) { - g_return_val_if_fail (format > 0 && format < AUTOAR_FORMAT_LAST, NULL); + g_return_val_if_fail (autoar_format_is_valid (format) , NULL); return autoar_format_description[format - 1].mime_type; } const char* autoar_format_get_extension (AutoarFormat format) { - g_return_val_if_fail (format > 0 && format < AUTOAR_FORMAT_LAST, NULL); + g_return_val_if_fail (autoar_format_is_valid (format), NULL); return autoar_format_description[format - 1].extension; } const char* autoar_format_get_description (AutoarFormat format) { - g_return_val_if_fail (format > 0 && format < AUTOAR_FORMAT_LAST, NULL); + g_return_val_if_fail (autoar_format_is_valid (format), NULL); return autoar_format_description[format - 1].description; } int autoar_format_get_format_libarchive (AutoarFormat format) { - g_return_val_if_fail (format > 0 && format < AUTOAR_FORMAT_LAST, -1); + g_return_val_if_fail (autoar_format_is_valid (format), -1); return autoar_format_description[format - 1].libarchive_format; } @@ -144,7 +150,7 @@ autoar_format_get_description_libarchive (AutoarFormat format) struct archive* a; gchar *str; - g_return_val_if_fail (format > 0 && format < AUTOAR_FORMAT_LAST, NULL); + g_return_val_if_fail (autoar_format_is_valid (format), NULL); a = archive_write_new (); archive_write_set_format (a, autoar_format_description[format - 1].libarchive_format); @@ -154,6 +160,12 @@ autoar_format_get_description_libarchive (AutoarFormat format) return str; } +AutoarFilter +autoar_filter_last (void) +{ + return AUTOAR_FILTER_LAST; +} + gboolean autoar_filter_is_valid (AutoarFilter filter) { @@ -163,28 +175,28 @@ autoar_filter_is_valid (AutoarFilter filter) const char* autoar_filter_get_mime_type (AutoarFilter filter) { - g_return_val_if_fail (filter > 0 && filter < AUTOAR_FILTER_LAST, NULL); + g_return_val_if_fail (autoar_filter_is_valid (filter), NULL); return autoar_filter_description[filter - 1].mime_type; } const char* autoar_filter_get_extension (AutoarFilter filter) { - g_return_val_if_fail (filter > 0 && filter < AUTOAR_FILTER_LAST, NULL); + g_return_val_if_fail (autoar_filter_is_valid (filter), NULL); return autoar_filter_description[filter - 1].extension; } const char* autoar_filter_get_description (AutoarFilter filter) { - g_return_val_if_fail (filter > 0 && filter < AUTOAR_FILTER_LAST, NULL); + g_return_val_if_fail (autoar_filter_is_valid (filter), NULL); return autoar_filter_description[filter - 1].description; } int autoar_filter_get_filter_libarchive (AutoarFilter filter) { - g_return_val_if_fail (filter > 0 && filter < AUTOAR_FILTER_LAST, -1); + g_return_val_if_fail (autoar_filter_is_valid (filter), -1); return autoar_filter_description[filter - 1].libarchive_filter; } @@ -194,7 +206,7 @@ autoar_filter_get_description_libarchive (AutoarFilter filter) struct archive *a; gchar *str; - g_return_val_if_fail (filter > 0 && filter < AUTOAR_FILTER_LAST, NULL); + g_return_val_if_fail (autoar_filter_is_valid (filter), NULL); a = archive_write_new (); archive_write_add_filter (a, autoar_filter_description[filter - 1].libarchive_filter); @@ -208,8 +220,8 @@ gchar* autoar_format_filter_get_mime_type (AutoarFormat format, AutoarFilter filter) { - g_return_val_if_fail (format > 0 && format < AUTOAR_FORMAT_LAST, NULL); - g_return_val_if_fail (filter > 0 && filter < AUTOAR_FILTER_LAST, NULL); + g_return_val_if_fail (autoar_format_is_valid (format), NULL); + g_return_val_if_fail (autoar_filter_is_valid (filter), NULL); switch (filter) { case AUTOAR_FILTER_NONE: @@ -235,8 +247,8 @@ gchar* autoar_format_filter_get_extension (AutoarFormat format, AutoarFilter filter) { - g_return_val_if_fail (format > 0 && format < AUTOAR_FORMAT_LAST, NULL); - g_return_val_if_fail (filter > 0 && filter < AUTOAR_FILTER_LAST, NULL); + g_return_val_if_fail (autoar_format_is_valid (format), NULL); + g_return_val_if_fail (autoar_filter_is_valid (filter), NULL); return g_strconcat (".", autoar_format_description[format - 1].extension, @@ -252,8 +264,8 @@ autoar_format_filter_get_description (AutoarFormat format, gchar *mime_type; gchar *description; - g_return_val_if_fail (format > 0 && format < AUTOAR_FORMAT_LAST, NULL); - g_return_val_if_fail (filter > 0 && filter < AUTOAR_FILTER_LAST, NULL); + g_return_val_if_fail (autoar_format_is_valid (format), NULL); + g_return_val_if_fail (autoar_filter_is_valid (filter), NULL); mime_type = autoar_format_filter_get_mime_type (format, filter); description = g_content_type_get_description (mime_type); diff --git a/gnome-autoar/autoar-format-filter.h b/gnome-autoar/autoar-format-filter.h index 9449f7e..2175936 100644 --- a/gnome-autoar/autoar-format-filter.h +++ b/gnome-autoar/autoar-format-filter.h @@ -62,6 +62,7 @@ typedef enum { AUTOAR_FILTER_LAST /*< skip >*/ } AutoarFilter; +AutoarFormat autoar_format_last (void); gboolean autoar_format_is_valid (AutoarFormat format); const char *autoar_format_get_mime_type (AutoarFormat format); const char *autoar_format_get_extension (AutoarFormat format); @@ -69,6 +70,7 @@ const char *autoar_format_get_description (AutoarFormat format); int autoar_format_get_format_libarchive (AutoarFormat format); gchar *autoar_format_get_description_libarchive (AutoarFormat format); +AutoarFilter autoar_filter_last (void); gboolean autoar_filter_is_valid (AutoarFilter filter); const char *autoar_filter_get_mime_type (AutoarFilter filter); const char *autoar_filter_get_extension (AutoarFilter filter); diff --git a/gnome-autoar/autoar-gtk.c b/gnome-autoar/autoar-gtk.c index 38cba8d..ab9dc1c 100644 --- a/gnome-autoar/autoar-gtk.c +++ b/gnome-autoar/autoar-gtk.c @@ -358,10 +358,11 @@ static GtkTreeModel* advanced_format_store (void) { GtkListStore *store; - int i; + int i, last; store = gtk_list_store_new (N_ADVANCED_FORMAT_COLS, G_TYPE_INT, G_TYPE_STRING); - for (i = 1; i < AUTOAR_FORMAT_LAST; i++) { + last = autoar_format_last (); + for (i = 1; i < last; i++) { GtkTreeIter iter; const char *description; @@ -379,10 +380,11 @@ static GtkTreeModel* advanced_filter_store (void) { GtkListStore *store; - int i; + int i, last; store = gtk_list_store_new (N_ADVANCED_FILTER_COLS, G_TYPE_INT, G_TYPE_STRING); - for (i = 1; i < AUTOAR_FILTER_LAST; i++) { + last = autoar_filter_last (); + for (i = 1; i < last; i++) { GtkTreeIter iter; const char *description; diff --git a/gnome-autoar/autoar-pref.c b/gnome-autoar/autoar-pref.c index ed563bc..ae353ab 100644 --- a/gnome-autoar/autoar-pref.c +++ b/gnome-autoar/autoar-pref.c @@ -201,7 +201,7 @@ autoar_pref_set_default_format (AutoarPref *arpref, AutoarFormat format) { g_return_if_fail (AUTOAR_IS_PREF (arpref)); - g_return_if_fail (format > 0 && format < AUTOAR_FORMAT_LAST); + g_return_if_fail (autoar_format_is_valid (format)); if (arpref->priv->modification_enabled && format != arpref->priv->default_format) arpref->priv->modification_flags |= MODIFIED_DEFAULT_FORMAT; arpref->priv->default_format = format; @@ -212,7 +212,7 @@ autoar_pref_set_default_filter (AutoarPref *arpref, AutoarFilter filter) { g_return_if_fail (AUTOAR_IS_PREF (arpref)); - g_return_if_fail (filter > 0 && filter < AUTOAR_FILTER_LAST); + g_return_if_fail (autoar_filter_is_valid (filter)); if (arpref->priv->modification_enabled && filter != arpref->priv->default_filter) arpref->priv->modification_flags |= MODIFIED_DEFAULT_FILTER; arpref->priv->default_filter = filter; |