[gthumb] added the G_GNUC_NULL_TERMINATED flag to some functions
- From: Paolo Bacchilega <paobac src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gthumb] added the G_GNUC_NULL_TERMINATED flag to some functions
- Date: Sat, 9 Nov 2013 20:01:22 +0000 (UTC)
commit 0611368c09710c82d0f920386e25740062f6ebaa
Author: Paolo Bacchilega <paobac src gnome org>
Date: Thu Oct 10 17:45:19 2013 +0200
added the G_GNUC_NULL_TERMINATED flag to some functions
gthumb/dom.c | 14 ++++----------
gthumb/dom.h | 6 ++----
gthumb/gedit-message-area.h | 38 +++++++++++++++++++-------------------
gthumb/glib-utils.h | 4 ++--
gthumb/gth-main.c | 25 ++++++++-----------------
gthumb/gth-main.h | 6 ++----
gthumb/gth-test-chain.c | 7 +++----
gthumb/gth-test-chain.h | 5 ++---
gthumb/gth-user-dir.h | 6 +++---
9 files changed, 45 insertions(+), 66 deletions(-)
---
diff --git a/gthumb/dom.c b/gthumb/dom.c
index 46adc48..4dc1f89 100644
--- a/gthumb/dom.c
+++ b/gthumb/dom.c
@@ -494,7 +494,6 @@ dom_document_new (void)
DomElement *
dom_document_create_element (DomDocument *self,
const char *tag_name,
- const char *first_attr,
...)
{
DomElement *element;
@@ -506,12 +505,10 @@ dom_document_create_element (DomDocument *self,
g_return_val_if_fail (tag_name != NULL, NULL);
element = dom_element_new (tag_name);
- va_start (var_args, first_attr);
- attr = first_attr;
- while (attr != NULL) {
+ va_start (var_args, tag_name);
+ while ((attr = va_arg (var_args, const char *)) != NULL) {
value = va_arg (var_args, const char *);
dom_element_set_attribute (element, attr, value);
- attr = va_arg (var_args, const char *);
}
va_end (var_args);
@@ -534,7 +531,6 @@ DomElement *
dom_document_create_element_with_text (DomDocument *self,
const char *text_data,
const char *tag_name,
- const char *first_attr,
...)
{
DomElement *element;
@@ -546,12 +542,10 @@ dom_document_create_element_with_text (DomDocument *self,
g_return_val_if_fail (tag_name != NULL, NULL);
element = dom_element_new (tag_name);
- va_start (var_args, first_attr);
- attr = first_attr;
- while (attr != NULL) {
+ va_start (var_args, tag_name);
+ while ((attr = va_arg (var_args, const char *)) != NULL) {
value = va_arg (var_args, const char *);
dom_element_set_attribute (element, attr, value);
- attr = va_arg (var_args, const char *);
}
va_end (var_args);
diff --git a/gthumb/dom.h b/gthumb/dom.h
index ad0b24b..ebc7c50 100644
--- a/gthumb/dom.h
+++ b/gthumb/dom.h
@@ -161,15 +161,13 @@ GType dom_document_get_type (void);
DomDocument * dom_document_new (void);
DomElement * dom_document_create_element (DomDocument *self,
const char *tag_name,
- const char *first_attr,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
DomElement * dom_document_create_text_node (DomDocument *self,
const char *data);
DomElement * dom_document_create_element_with_text (DomDocument *self,
const char *text,
const char *tag_name,
- const char *first_attr,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
char * dom_document_dump (DomDocument *self,
gsize *len);
gboolean dom_document_load (DomDocument *self,
diff --git a/gthumb/gedit-message-area.h b/gthumb/gedit-message-area.h
index 3302740..6730d1e 100644
--- a/gthumb/gedit-message-area.h
+++ b/gthumb/gedit-message-area.h
@@ -2,7 +2,7 @@
* gedit-message-area.h
* This file is part of gedit
*
- * Copyright (C) 2005 - Paolo Maggi
+ * Copyright (C) 2005 - Paolo Maggi
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -17,11 +17,11 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-
+
/*
- * Modified by the gedit Team, 2005. See the AUTHORS file for a
- * list of people on the gedit Team.
- * See the ChangeLog files for a list of changes.
+ * Modified by the gedit Team, 2005. See the AUTHORS file for a
+ * list of people on the gedit Team.
+ * See the ChangeLog files for a list of changes.
*
* $Id: gedit-message-area.h 6631 2008-11-29 11:06:49Z pborelli $
*/
@@ -51,7 +51,7 @@ typedef struct _GeditMessageAreaPrivate GeditMessageAreaPrivate;
*/
typedef struct _GeditMessageArea GeditMessageArea;
-struct _GeditMessageArea
+struct _GeditMessageArea
{
GtkBox parent;
@@ -64,7 +64,7 @@ struct _GeditMessageArea
*/
typedef struct _GeditMessageAreaClass GeditMessageAreaClass;
-struct _GeditMessageAreaClass
+struct _GeditMessageAreaClass
{
GtkBoxClass parent_class;
@@ -76,7 +76,7 @@ struct _GeditMessageAreaClass
/* Padding for future expansion */
void (*_gedit_reserved1) (void);
- void (*_gedit_reserved2) (void);
+ void (*_gedit_reserved2) (void);
};
/*
@@ -87,34 +87,34 @@ GType gedit_message_area_get_type (void) G_GNUC_CONST;
GtkWidget *gedit_message_area_new (void);
GtkWidget *gedit_message_area_new_with_buttons (const gchar *first_button_text,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
void gedit_message_area_set_contents (GeditMessageArea *message_area,
GtkWidget *contents);
-
+
void gedit_message_area_add_action_widget (GeditMessageArea *message_area,
GtkWidget *child,
gint response_id);
-
+
GtkWidget *gedit_message_area_add_button (GeditMessageArea *message_area,
const gchar *button_text,
gint response_id);
-
-GtkWidget *gedit_message_area_add_stock_button_with_text
- (GeditMessageArea *message_area,
- const gchar *text,
- const gchar *stock_id,
+
+GtkWidget *gedit_message_area_add_stock_button_with_text
+ (GeditMessageArea *message_area,
+ const gchar *text,
+ const gchar *stock_id,
gint response_id);
void gedit_message_area_add_buttons (GeditMessageArea *message_area,
const gchar *first_button_text,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
-void gedit_message_area_set_response_sensitive
+void gedit_message_area_set_response_sensitive
(GeditMessageArea *message_area,
gint response_id,
gboolean setting);
-void gedit_message_area_set_default_response
+void gedit_message_area_set_default_response
(GeditMessageArea *message_area,
gint response_id);
diff --git a/gthumb/glib-utils.h b/gthumb/glib-utils.h
index b194a3a..b0598ac 100644
--- a/gthumb/glib-utils.h
+++ b/gthumb/glib-utils.h
@@ -250,7 +250,7 @@ gboolean _g_uri_parent_of_uri (const char *dir,
char * _g_uri_get_parent (const char *uri);
char * _g_uri_remove_extension (const char *uri);
char * _g_build_uri (const char *base,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
char * _g_uri_get_scheme (const char *uri);
const char * _g_uri_remove_host (const char *uri);
char * _g_uri_get_host (const char *uri);
@@ -272,7 +272,7 @@ GFile * _g_file_get_destination (GFile *source,
GFile *destination_folder);
GFile * _g_file_get_duplicated (GFile *file);
GFile * _g_file_get_child (GFile *file,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
GIcon * _g_file_get_icon (GFile *file);
GList * _g_file_list_dup (GList *l);
void _g_file_list_free (GList *l);
diff --git a/gthumb/gth-main.c b/gthumb/gth-main.c
index 2357217..92609dd 100644
--- a/gthumb/gth-main.c
+++ b/gthumb/gth-main.c
@@ -612,7 +612,6 @@ gth_main_get_all_sort_types (void)
static GthTypeSpec *
_gth_main_create_type_spec (GType object_type,
- const char *first_property_name,
va_list var_args)
{
GObject *object;
@@ -622,17 +621,15 @@ _gth_main_create_type_spec (GType object_type,
type_spec = gth_type_spec_new (object_type);
- if (first_property_name == NULL)
- return type_spec;
-
object = g_object_new (object_type, NULL);
- type_spec->params = g_new (GParameter, n_alloced_params);
- name = first_property_name;
- while (name != NULL) {
+ while ((name = va_arg (var_args, char *)) != NULL) {
GParamSpec *pspec;
char *error = NULL;
+ if (type_spec->params == NULL)
+ type_spec->params = g_new (GParameter, n_alloced_params);
+
pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (object), name);
if (pspec == NULL) {
g_warning ("%s: object class `%s' has no property named `%s'",
@@ -652,7 +649,6 @@ _gth_main_create_type_spec (GType object_type,
break;
}
type_spec->n_params++;
- name = va_arg (var_args, char*);
}
g_object_unref (object);
@@ -676,7 +672,6 @@ _register_image_loader_func (GthImageLoaderFunc loader,
void
gth_main_register_image_loader_func (GthImageLoaderFunc loader,
GthImageFormat native_format,
- const char *first_mime_type,
...)
{
va_list var_args;
@@ -684,12 +679,9 @@ gth_main_register_image_loader_func (GthImageLoaderFunc loader,
g_mutex_lock (®ister_mutex);
- va_start (var_args, first_mime_type);
- mime_type = first_mime_type;
- while (mime_type != NULL) {
+ va_start (var_args, native_format);
+ while ((mime_type = va_arg (var_args, const char *)) != NULL)
_register_image_loader_func (loader, native_format, mime_type);
- mime_type = va_arg (var_args, const char *);
- }
va_end (var_args);
g_mutex_unlock (®ister_mutex);
@@ -902,7 +894,6 @@ void
gth_main_register_object (GType superclass_type,
const char *object_id,
GType object_type,
- const char *first_property_name,
...)
{
const char *superclass_name;
@@ -943,8 +934,8 @@ gth_main_register_object (GType superclass_type,
g_hash_table_insert (Main->priv->objects_order, g_strdup (superclass_name), object_order);
}
- va_start (var_args, first_property_name);
- spec = _gth_main_create_type_spec (object_type, first_property_name, var_args);
+ va_start (var_args, object_type);
+ spec = _gth_main_create_type_spec (object_type, var_args);
va_end (var_args);
id = g_strdup (object_id);
diff --git a/gthumb/gth-main.h b/gthumb/gth-main.h
index 9e9fe3c..78f21d1 100644
--- a/gthumb/gth-main.h
+++ b/gthumb/gth-main.h
@@ -88,8 +88,7 @@ GthFileDataSort * gth_main_get_sort_type (const char
GList * gth_main_get_all_sort_types (void);
void gth_main_register_image_loader_func (GthImageLoaderFunc loader,
GthImageFormat native_format,
- const char *first_mime_type,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
void gth_main_register_image_loader_func_v (GthImageLoaderFunc loader,
GthImageFormat native_format,
const char **mime_types);
@@ -101,8 +100,7 @@ GthTest * gth_main_add_general_filter (GthTest
void gth_main_register_object (GType superclass_type,
const char *object_id,
GType object_type,
- const char *first_property,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
GList * gth_main_get_registered_objects (GType superclass_type);
GList * gth_main_get_registered_objects_id (GType superclass_type);
gpointer gth_main_get_registered_object (GType superclass_type,
diff --git a/gthumb/gth-test-chain.c b/gthumb/gth-test-chain.c
index b97c34a..7fe51aa 100644
--- a/gthumb/gth-test-chain.c
+++ b/gthumb/gth-test-chain.c
@@ -251,19 +251,18 @@ gth_test_chain_init (GthTestChain *test)
GthTest *
gth_test_chain_new (GthMatchType match_type,
- GthTest *test,
...)
{
GthTestChain *chain;
va_list args;
+ GthTest *test;
chain = g_object_new (GTH_TYPE_TEST_CHAIN, NULL);
chain->priv->match_type = match_type;
- va_start (args, test);
- while (test != NULL) {
+ va_start (args, match_type);
+ while ((test = va_arg (args, GthTest *)) != NULL) {
gth_test_chain_add_test (chain, g_object_ref (test));
- test = va_arg (args, GthTest *);
}
va_end (args);
diff --git a/gthumb/gth-test-chain.h b/gthumb/gth-test-chain.h
index c8f7925..7c27c80 100644
--- a/gthumb/gth-test-chain.h
+++ b/gthumb/gth-test-chain.h
@@ -58,12 +58,11 @@ struct _GthTestChainClass
GType gth_test_chain_get_type (void) G_GNUC_CONST;
GthTest * gth_test_chain_new (GthMatchType match_type,
- GthTest *first_test,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
void gth_test_chain_set_match_type (GthTestChain *chain,
GthMatchType match_type);
GthMatchType gth_test_chain_get_match_type (GthTestChain *chain);
-void gth_test_chain_clear_tests (GthTestChain *chain);
+void gth_test_chain_clear_tests (GthTestChain *chain);
void gth_test_chain_add_test (GthTestChain *chain,
GthTest *test);
GList * gth_test_chain_get_tests (GthTestChain *chain);
diff --git a/gthumb/gth-user-dir.h b/gthumb/gth-user-dir.h
index 933a7c1..6999763 100644
--- a/gthumb/gth-user-dir.h
+++ b/gthumb/gth-user-dir.h
@@ -37,13 +37,13 @@ typedef enum {
void gth_user_dir_mkdir_with_parents (GthDir dir_type,
const char *first_element,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
GFile * gth_user_dir_get_file_for_read (GthDir dir_type,
const char *first_element,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
GFile * gth_user_dir_get_file_for_write (GthDir dir_type,
const char *first_element,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
G_END_DECLS
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]