1. Add more warnings for the gst core only. Various trival fixes to quiet the warnings.

Original commit message from CVS:
1. Add more warnings for the gst core only.  Various trival fixes
to quiet the warnings.

2. Fix GstBufferCopyFunc prototype.

3. Re-apply the reverted type!=0 assertion in gst_elementfactory_new.
This commit is contained in:
Joshua N. Pritikin 2001-09-14 22:16:47 +00:00
parent 4934137e0c
commit 8b29840f55
25 changed files with 77 additions and 31 deletions

View file

@ -201,7 +201,13 @@ CFLAGS = \
$(LIBGST_CFLAGS) \ $(LIBGST_CFLAGS) \
-D_GNU_SOURCE \ -D_GNU_SOURCE \
-DG_LOG_DOMAIN=g_log_domain_gstreamer \ -DG_LOG_DOMAIN=g_log_domain_gstreamer \
-DGST_CONFIG_DIR=\""$(GST_CONFIG_DIR)"\" -DGST_CONFIG_DIR=\""$(GST_CONFIG_DIR)"\" \
\
-W -Wpointer-arith -Wbad-function-cast \
-Wcast-align -Wsign-compare \
-Wmissing-prototypes -Wmissing-declarations \
-Wnested-externs \
-Winline -Wno-unused
LIBS = $(LIBGST_LIBS) LIBS = $(LIBGST_LIBS)
LDFLAGS = "" LDFLAGS = ""

View file

@ -66,7 +66,7 @@ struct _cothread_state {
}; };
cothread_context* cothread_init(); cothread_context* cothread_init (void);
cothread_state* cothread_create (cothread_context *ctx); cothread_state* cothread_create (cothread_context *ctx);
void cothread_setfunc (cothread_state *thread, cothread_func func, void cothread_setfunc (cothread_state *thread, cothread_func func,
int argc, char **argv); int argc, char **argv);

View file

@ -58,6 +58,7 @@ GType gst_autoplug_get_type(void)
sizeof(GstAutoplug), sizeof(GstAutoplug),
4, 4,
(GInstanceInitFunc)gst_autoplug_init, (GInstanceInitFunc)gst_autoplug_init,
NULL
}; };
autoplug_type = g_type_register_static (GST_TYPE_OBJECT, "GstAutoplug", &autoplug_info, G_TYPE_FLAG_ABSTRACT); autoplug_type = g_type_register_static (GST_TYPE_OBJECT, "GstAutoplug", &autoplug_info, G_TYPE_FLAG_ABSTRACT);
} }
@ -189,6 +190,7 @@ gst_autoplugfactory_get_type (void)
sizeof(GstAutoplugFactory), sizeof(GstAutoplugFactory),
0, 0,
(GInstanceInitFunc) gst_autoplugfactory_init, (GInstanceInitFunc) gst_autoplugfactory_init,
NULL
}; };
autoplugfactory_type = g_type_register_static (GST_TYPE_PLUGIN_FEATURE, autoplugfactory_type = g_type_register_static (GST_TYPE_PLUGIN_FEATURE,
"GstAutoplugFactory", &autoplugfactory_info, 0); "GstAutoplugFactory", &autoplugfactory_info, 0);

View file

@ -87,6 +87,7 @@ gst_bin_get_type (void)
sizeof(GstBin), sizeof(GstBin),
8, 8,
(GInstanceInitFunc)gst_bin_init, (GInstanceInitFunc)gst_bin_init,
NULL
}; };
bin_type = g_type_register_static (GST_TYPE_ELEMENT, "GstBin", &bin_info, 0); bin_type = g_type_register_static (GST_TYPE_ELEMENT, "GstBin", &bin_info, 0);
} }
@ -170,7 +171,7 @@ gst_bin_reset_element_sched (GstElement *element, GstSchedule *sched)
// GST_SCHEDULE_ADD_ELEMENT (sched, element); // GST_SCHEDULE_ADD_ELEMENT (sched, element);
} }
void static void
gst_bin_set_element_sched (GstElement *element,GstSchedule *sched) gst_bin_set_element_sched (GstElement *element,GstSchedule *sched)
{ {
GList *children; GList *children;
@ -211,7 +212,7 @@ gst_bin_set_element_sched (GstElement *element,GstSchedule *sched)
} }
void static void
gst_bin_unset_element_sched (GstElement *element) gst_bin_unset_element_sched (GstElement *element)
{ {
GList *children; GList *children;

View file

@ -357,7 +357,7 @@ gst_buffer_copy (GstBuffer *buffer)
// if a copy function exists, use it, else copy the bytes // if a copy function exists, use it, else copy the bytes
if (buffer->copy != NULL) { if (buffer->copy != NULL) {
(buffer->copy)(buffer,newbuf); newbuf = (buffer->copy)(buffer);
} else { } else {
// copy the absolute size // copy the absolute size
newbuf->size = buffer->size; newbuf->size = buffer->size;

View file

@ -86,8 +86,8 @@ typedef enum {
typedef struct _GstBuffer GstBuffer; typedef struct _GstBuffer GstBuffer;
typedef void (*GstBufferFreeFunc) (GstBuffer *buf); typedef void (*GstBufferFreeFunc) (GstBuffer *buf);
typedef void (*GstBufferCopyFunc) (GstBuffer *srcbuf,GstBuffer *dstbuf); typedef GstBuffer *(*GstBufferCopyFunc) (GstBuffer *srcbuf);
#include <gst/gstbufferpool.h> #include <gst/gstbufferpool.h>

View file

@ -194,7 +194,8 @@ gst_buffer_pool_set_buffer_free_function (GstBufferPool *pool,
* @destroy: the copy function * @destroy: the copy function
* *
* Sets the function that will be called when a buffer is copied. * Sets the function that will be called when a buffer is copied.
* You can use the default GstBuffer implementation (gst_buffer_copy) if you like. *
* You may use the default GstBuffer implementation (gst_buffer_copy).
*/ */
void void
gst_buffer_pool_set_buffer_copy_function (GstBufferPool *pool, gst_buffer_pool_set_buffer_copy_function (GstBufferPool *pool,

View file

@ -83,6 +83,7 @@ GType gst_element_get_type(void) {
sizeof(GstElement), sizeof(GstElement),
0, 0,
(GInstanceInitFunc)gst_element_init, (GInstanceInitFunc)gst_element_init,
NULL
}; };
element_type = g_type_register_static(GST_TYPE_OBJECT, "GstElement", &element_info, G_TYPE_FLAG_ABSTRACT); element_type = g_type_register_static(GST_TYPE_OBJECT, "GstElement", &element_info, G_TYPE_FLAG_ABSTRACT);
} }

View file

@ -57,6 +57,7 @@ gst_elementfactory_get_type (void)
sizeof(GstElementFactory), sizeof(GstElementFactory),
0, 0,
(GInstanceInitFunc) gst_elementfactory_init, (GInstanceInitFunc) gst_elementfactory_init,
NULL
}; };
elementfactory_type = g_type_register_static (GST_TYPE_PLUGIN_FEATURE, elementfactory_type = g_type_register_static (GST_TYPE_PLUGIN_FEATURE,
"GstElementFactory", &elementfactory_info, 0); "GstElementFactory", &elementfactory_info, 0);
@ -176,6 +177,7 @@ gst_elementfactory_new (const gchar *name, GType type,
GstElementFactory *factory; GstElementFactory *factory;
g_return_val_if_fail(name != NULL, NULL); g_return_val_if_fail(name != NULL, NULL);
g_return_val_if_fail (type, NULL);
g_return_val_if_fail (details, NULL); g_return_val_if_fail (details, NULL);
factory = gst_elementfactory_find (name); factory = gst_elementfactory_find (name);

View file

@ -41,6 +41,7 @@ gst_extra_get_filename_type (void)
0, //sizeof(GstElement), 0, //sizeof(GstElement),
0, 0,
NULL, NULL,
NULL
}; };
filename_type = g_type_register_static (G_TYPE_STRING, "GstFilename", &filename_info, 0); filename_type = g_type_register_static (G_TYPE_STRING, "GstFilename", &filename_info, 0);
} }

View file

@ -78,6 +78,7 @@ gst_object_get_type (void)
sizeof (GstObject), sizeof (GstObject),
32, 32,
(GInstanceInitFunc) gst_object_init, (GInstanceInitFunc) gst_object_init,
NULL
}; };
object_type = g_type_register_static (G_TYPE_OBJECT, "GstObject", &object_info, G_TYPE_FLAG_ABSTRACT); object_type = g_type_register_static (G_TYPE_OBJECT, "GstObject", &object_info, G_TYPE_FLAG_ABSTRACT);
} }
@ -608,6 +609,7 @@ gst_signal_object_get_type (void)
sizeof(GstSignalObject), sizeof(GstSignalObject),
16, 16,
(GInstanceInitFunc)gst_signal_object_init, (GInstanceInitFunc)gst_signal_object_init,
NULL
}; };
signal_object_type = g_type_register_static(G_TYPE_OBJECT, "GstSignalObject", &signal_object_info, 0); signal_object_type = g_type_register_static(G_TYPE_OBJECT, "GstSignalObject", &signal_object_info, 0);
} }

View file

@ -55,6 +55,7 @@ gst_pad_get_type(void) {
sizeof(GstPad), sizeof(GstPad),
32, 32,
(GInstanceInitFunc)gst_pad_init, (GInstanceInitFunc)gst_pad_init,
NULL
}; };
pad_type = g_type_register_static(GST_TYPE_OBJECT, "GstPad", &pad_info, 0); pad_type = g_type_register_static(GST_TYPE_OBJECT, "GstPad", &pad_info, 0);
} }
@ -124,6 +125,7 @@ gst_real_pad_get_type(void) {
sizeof(GstRealPad), sizeof(GstRealPad),
32, 32,
(GInstanceInitFunc)gst_real_pad_init, (GInstanceInitFunc)gst_real_pad_init,
NULL
}; };
pad_type = g_type_register_static(GST_TYPE_PAD, "GstRealPad", &pad_info, 0); pad_type = g_type_register_static(GST_TYPE_PAD, "GstRealPad", &pad_info, 0);
} }
@ -1442,7 +1444,9 @@ gst_pad_push (GstPad *pad, GstBuffer *buf)
GST_DEBUG_FUNCPTR_NAME (peer->chainhandler), GST_DEBUG_PAD_NAME (((GstPad*)peer))); GST_DEBUG_FUNCPTR_NAME (peer->chainhandler), GST_DEBUG_PAD_NAME (((GstPad*)peer)));
(peer->chainhandler) (((GstPad*)peer), buf); (peer->chainhandler) (((GstPad*)peer), buf);
} else } else
GST_DEBUG (GST_CAT_DATAFLOW, "no chainhandler\n"); {
GST_DEBUG (GST_CAT_DATAFLOW, "no chainhandler\n");
}
} }
#endif #endif
@ -1633,6 +1637,7 @@ gst_padtemplate_get_type (void)
sizeof(GstPadTemplate), sizeof(GstPadTemplate),
32, 32,
(GInstanceInitFunc)gst_padtemplate_init, (GInstanceInitFunc)gst_padtemplate_init,
NULL
}; };
padtemplate_type = g_type_register_static(GST_TYPE_OBJECT, "GstPadTemplate", &padtemplate_info, 0); padtemplate_type = g_type_register_static(GST_TYPE_OBJECT, "GstPadTemplate", &padtemplate_info, 0);
} }
@ -1882,6 +1887,7 @@ gst_ghost_pad_get_type(void) {
sizeof(GstGhostPad), sizeof(GstGhostPad),
8, 8,
(GInstanceInitFunc)gst_ghost_pad_init, (GInstanceInitFunc)gst_ghost_pad_init,
NULL
}; };
pad_type = g_type_register_static(GST_TYPE_PAD, "GstGhostPad", &pad_info, 0); pad_type = g_type_register_static(GST_TYPE_PAD, "GstGhostPad", &pad_info, 0);
} }

View file

@ -400,6 +400,9 @@ GstCaps* gst_padtemplate_get_caps_by_name (GstPadTemplate *templ, const gchar *
xmlNodePtr gst_padtemplate_save_thyself (GstPadTemplate *templ, xmlNodePtr parent); xmlNodePtr gst_padtemplate_save_thyself (GstPadTemplate *templ, xmlNodePtr parent);
GstPadTemplate* gst_padtemplate_load_thyself (xmlNodePtr parent); GstPadTemplate* gst_padtemplate_load_thyself (xmlNodePtr parent);
xmlNodePtr gst_pad_ghost_save_thyself (GstPad *pad,
GstElement *bin,
xmlNodePtr parent);
#ifdef __cplusplus #ifdef __cplusplus
} }

View file

@ -88,9 +88,11 @@ dynamic_connect (GstElement *element, GstPad *newpad, gpointer data)
static gchar * static gchar *
gst_parse_unique_name(gchar *type,gst_parse_priv *priv) gst_parse_unique_name(gchar *type,gst_parse_priv *priv)
{ {
gpointer tmp;
gint count; gint count;
count = GPOINTER_TO_INT(g_hash_table_lookup(priv->elementcounts,type)); tmp = g_hash_table_lookup (priv->elementcounts,type);
count = GPOINTER_TO_INT (tmp);
count++; count++;
g_hash_table_insert(priv->elementcounts,type,GINT_TO_POINTER(count)); g_hash_table_insert(priv->elementcounts,type,GINT_TO_POINTER(count));
@ -467,9 +469,10 @@ GST_DEBUG_PAD_NAME(temppad),GST_ELEMENT_NAME (parent),GST_PAD_NAME(temppad));
if (retval) return retval; if (retval) return retval;
if (closingchar != '\0') DEBUG (closingchar != '\0'?
DEBUG("returning IN THE WRONG PLACE\n"); "returning IN THE WRONG PLACE\n" :
else DEBUG("ending pipeline\n"); "ending pipeline\n");
return i+1; return i+1;
} }

View file

@ -75,6 +75,7 @@ gst_pipeline_get_type (void) {
sizeof(GstPipeline), sizeof(GstPipeline),
0, 0,
(GInstanceInitFunc)gst_pipeline_init, (GInstanceInitFunc)gst_pipeline_init,
NULL
}; };
pipeline_type = g_type_register_static (GST_TYPE_BIN, "GstPipeline", &pipeline_info, 0); pipeline_type = g_type_register_static (GST_TYPE_BIN, "GstPipeline", &pipeline_info, 0);
} }

View file

@ -674,7 +674,7 @@ gst_plugin_find_feature_func (GstPlugin *plugin, const gchar *name, GType type)
return NULL; return NULL;
} }
GstPluginFeature* static GstPluginFeature*
gst_plugin_find_feature (const gchar *name, GType type) gst_plugin_find_feature (const gchar *name, GType type)
{ {
GList *plugins; GList *plugins;

View file

@ -51,6 +51,7 @@ gst_plugin_feature_get_type (void)
sizeof (GstObject), sizeof (GstObject),
32, 32,
(GInstanceInitFunc) gst_plugin_feature_init, (GInstanceInitFunc) gst_plugin_feature_init,
NULL
}; };
plugin_feature_type = g_type_register_static (GST_TYPE_OBJECT, "GstPluginFeature", plugin_feature_type = g_type_register_static (GST_TYPE_OBJECT, "GstPluginFeature",
&plugin_feature_info, G_TYPE_FLAG_ABSTRACT); &plugin_feature_info, G_TYPE_FLAG_ABSTRACT);

View file

@ -121,6 +121,7 @@ gst_queue_get_type(void)
sizeof(GstQueue), sizeof(GstQueue),
4, 4,
(GInstanceInitFunc)gst_queue_init, (GInstanceInitFunc)gst_queue_init,
NULL
}; };
queue_type = g_type_register_static (GST_TYPE_ELEMENT, "GstQueue", &queue_info, 0); queue_type = g_type_register_static (GST_TYPE_ELEMENT, "GstQueue", &queue_info, 0);
} }

View file

@ -842,6 +842,7 @@ GType gst_schedule_get_type(void) {
sizeof(GstSchedule), sizeof(GstSchedule),
0, 0,
(GInstanceInitFunc)gst_schedule_init, (GInstanceInitFunc)gst_schedule_init,
NULL
}; };
schedule_type = g_type_register_static(GST_TYPE_OBJECT, "GstSchedule", &schedule_info, 0); schedule_type = g_type_register_static(GST_TYPE_OBJECT, "GstSchedule", &schedule_info, 0);
} }
@ -910,7 +911,7 @@ GstElement *gst_schedule_check_pad (GstSchedule *sched, GstPad *pad) {
} }
*/ */
GstScheduleChain * static GstScheduleChain *
gst_schedule_chain_new (GstSchedule *sched) gst_schedule_chain_new (GstSchedule *sched)
{ {
GstScheduleChain *chain = g_new (GstScheduleChain, 1); GstScheduleChain *chain = g_new (GstScheduleChain, 1);
@ -934,7 +935,7 @@ gst_schedule_chain_new (GstSchedule *sched)
return chain; return chain;
} }
void static void
gst_schedule_chain_destroy (GstScheduleChain *chain) gst_schedule_chain_destroy (GstScheduleChain *chain)
{ {
GstSchedule *sched = chain->sched; GstSchedule *sched = chain->sched;
@ -951,7 +952,7 @@ gst_schedule_chain_destroy (GstScheduleChain *chain)
GST_INFO (GST_CAT_SCHEDULING, "destroyed chain %p, now are %d chains in sched %p",chain,sched->num_chains,sched); GST_INFO (GST_CAT_SCHEDULING, "destroyed chain %p, now are %d chains in sched %p",chain,sched->num_chains,sched);
} }
void static void
gst_schedule_chain_add_element (GstScheduleChain *chain, GstElement *element) gst_schedule_chain_add_element (GstScheduleChain *chain, GstElement *element)
{ {
GST_INFO (GST_CAT_SCHEDULING, "adding element \"%s\" to chain %p", GST_ELEMENT_NAME (element),chain); GST_INFO (GST_CAT_SCHEDULING, "adding element \"%s\" to chain %p", GST_ELEMENT_NAME (element),chain);
@ -964,7 +965,7 @@ gst_schedule_chain_add_element (GstScheduleChain *chain, GstElement *element)
chain->num_elements++; chain->num_elements++;
} }
void static void
gst_schedule_chain_enable_element (GstScheduleChain *chain, GstElement *element) gst_schedule_chain_enable_element (GstScheduleChain *chain, GstElement *element)
{ {
GST_INFO (GST_CAT_SCHEDULING, "enabling element \"%s\" in chain %p", GST_ELEMENT_NAME (element),chain); GST_INFO (GST_CAT_SCHEDULING, "enabling element \"%s\" in chain %p", GST_ELEMENT_NAME (element),chain);
@ -979,7 +980,7 @@ gst_schedule_chain_enable_element (GstScheduleChain *chain, GstElement *element)
gst_schedule_cothreaded_chain(GST_BIN(chain->sched->parent),chain); gst_schedule_cothreaded_chain(GST_BIN(chain->sched->parent),chain);
} }
void static void
gst_schedule_chain_disable_element (GstScheduleChain *chain, GstElement *element) gst_schedule_chain_disable_element (GstScheduleChain *chain, GstElement *element)
{ {
GST_INFO (GST_CAT_SCHEDULING, "disabling element \"%s\" in chain %p", GST_ELEMENT_NAME (element),chain); GST_INFO (GST_CAT_SCHEDULING, "disabling element \"%s\" in chain %p", GST_ELEMENT_NAME (element),chain);
@ -995,7 +996,7 @@ gst_schedule_chain_disable_element (GstScheduleChain *chain, GstElement *element
// gst_schedule_cothreaded_chain(GST_BIN(chain->sched->parent),chain); // gst_schedule_cothreaded_chain(GST_BIN(chain->sched->parent),chain);
} }
void static void
gst_schedule_chain_remove_element (GstScheduleChain *chain, GstElement *element) gst_schedule_chain_remove_element (GstScheduleChain *chain, GstElement *element)
{ {
GST_INFO (GST_CAT_SCHEDULING, "removing element \"%s\" from chain %p", GST_ELEMENT_NAME (element),chain); GST_INFO (GST_CAT_SCHEDULING, "removing element \"%s\" from chain %p", GST_ELEMENT_NAME (element),chain);
@ -1017,7 +1018,7 @@ gst_schedule_chain_remove_element (GstScheduleChain *chain, GstElement *element)
element->sched = NULL; element->sched = NULL;
} }
void static void
gst_schedule_chain_elements (GstSchedule *sched, GstElement *element1, GstElement *element2) gst_schedule_chain_elements (GstSchedule *sched, GstElement *element1, GstElement *element2)
{ {
GList *chains; GList *chains;
@ -1103,7 +1104,7 @@ GST_ELEMENT_SCHED(srcelement),GST_ELEMENT_SCHED(sinkelement));
} }
// find the chain within the schedule that holds the element, if any // find the chain within the schedule that holds the element, if any
GstScheduleChain * static GstScheduleChain *
gst_schedule_find_chain (GstSchedule *sched, GstElement *element) gst_schedule_find_chain (GstSchedule *sched, GstElement *element)
{ {
GList *chains; GList *chains;
@ -1125,7 +1126,7 @@ gst_schedule_find_chain (GstSchedule *sched, GstElement *element)
return NULL; return NULL;
} }
void static void
gst_schedule_chain_recursive_add (GstScheduleChain *chain, GstElement *element) gst_schedule_chain_recursive_add (GstScheduleChain *chain, GstElement *element)
{ {
GList *pads; GList *pads;

View file

@ -95,6 +95,7 @@ gst_thread_get_type(void) {
sizeof(GstThread), sizeof(GstThread),
4, 4,
(GInstanceInitFunc)gst_thread_init, (GInstanceInitFunc)gst_thread_init,
NULL
}; };
thread_type = g_type_register_static(GST_TYPE_BIN, "GstThread", &thread_info, 0); thread_type = g_type_register_static(GST_TYPE_BIN, "GstThread", &thread_info, 0);
} }

View file

@ -69,6 +69,7 @@ gst_typefactory_get_type (void)
sizeof(GstTypeFactory), sizeof(GstTypeFactory),
0, 0,
(GInstanceInitFunc) gst_typefactory_init, (GInstanceInitFunc) gst_typefactory_init,
NULL
}; };
typefactory_type = g_type_register_static (GST_TYPE_PLUGIN_FEATURE, typefactory_type = g_type_register_static (GST_TYPE_PLUGIN_FEATURE,
"GstTypeFactory", &typefactory_info, 0); "GstTypeFactory", &typefactory_info, 0);

View file

@ -81,6 +81,7 @@ gst_typefind_get_type (void)
sizeof(GstTypeFind), sizeof(GstTypeFind),
0, 0,
(GInstanceInitFunc)gst_typefind_init, (GInstanceInitFunc)gst_typefind_init,
NULL
}; };
typefind_type = g_type_register_static (GST_TYPE_ELEMENT, "GstTypeFind", &typefind_info, 0); typefind_type = g_type_register_static (GST_TYPE_ELEMENT, "GstTypeFind", &typefind_info, 0);
} }

View file

@ -28,6 +28,8 @@
#include "gstextratypes.h" #include "gstextratypes.h"
#define ZERO(mem) memset(&mem, 0, sizeof(mem))
/** /**
* gst_util_get_int_arg: * gst_util_get_int_arg:
* @object: the object to query * @object: the object to query
@ -40,8 +42,9 @@
gint gint
gst_util_get_int_arg (GObject *object, const gchar *argname) gst_util_get_int_arg (GObject *object, const gchar *argname)
{ {
GValue value = {0, }; GValue value;
ZERO (value);
g_value_init (&value, G_TYPE_INT); g_value_init (&value, G_TYPE_INT);
g_object_get_property(G_OBJECT(object),argname,&value); g_object_get_property(G_OBJECT(object),argname,&value);
@ -60,8 +63,9 @@ gst_util_get_int_arg (GObject *object, const gchar *argname)
gint gint
gst_util_get_bool_arg (GObject *object, const gchar *argname) gst_util_get_bool_arg (GObject *object, const gchar *argname)
{ {
GValue value = {0, }; GValue value;
ZERO (value);
g_value_init (&value, G_TYPE_BOOLEAN); g_value_init (&value, G_TYPE_BOOLEAN);
g_object_get_property(G_OBJECT(object),argname,&value); g_object_get_property(G_OBJECT(object),argname,&value);
@ -80,8 +84,9 @@ gst_util_get_bool_arg (GObject *object, const gchar *argname)
glong glong
gst_util_get_long_arg (GObject *object, const gchar *argname) gst_util_get_long_arg (GObject *object, const gchar *argname)
{ {
GValue value = {0, }; GValue value;
ZERO (value);
g_value_init (&value, G_TYPE_LONG); g_value_init (&value, G_TYPE_LONG);
g_object_get_property(G_OBJECT(object),argname,&value); g_object_get_property(G_OBJECT(object),argname,&value);
@ -100,8 +105,9 @@ gst_util_get_long_arg (GObject *object, const gchar *argname)
gfloat gfloat
gst_util_get_float_arg (GObject *object, const gchar *argname) gst_util_get_float_arg (GObject *object, const gchar *argname)
{ {
GValue value = {0, }; GValue value;
ZERO (value);
g_value_init (&value, G_TYPE_FLOAT); g_value_init (&value, G_TYPE_FLOAT);
g_object_get_property(G_OBJECT(object),argname,&value); g_object_get_property(G_OBJECT(object),argname,&value);
@ -120,8 +126,9 @@ gst_util_get_float_arg (GObject *object, const gchar *argname)
gdouble gdouble
gst_util_get_double_arg (GObject *object, const gchar *argname) gst_util_get_double_arg (GObject *object, const gchar *argname)
{ {
GValue value = {0, }; GValue value;
ZERO (value);
g_value_init (&value, G_TYPE_DOUBLE); g_value_init (&value, G_TYPE_DOUBLE);
g_object_get_property(G_OBJECT(object),argname,&value); g_object_get_property(G_OBJECT(object),argname,&value);
@ -140,12 +147,13 @@ gst_util_get_double_arg (GObject *object, const gchar *argname)
const gchar* const gchar*
gst_util_get_string_arg (GObject *object, const gchar *argname) gst_util_get_string_arg (GObject *object, const gchar *argname)
{ {
GValue value = {0, }; GValue value;
ZERO (value);
g_value_init (&value, G_TYPE_STRING); g_value_init (&value, G_TYPE_STRING);
g_object_get_property(G_OBJECT(object),argname,&value); g_object_get_property(G_OBJECT(object),argname,&value);
return g_value_get_string(&value); return g_value_get_string(&value); // memleak?
} }
/** /**
@ -160,8 +168,9 @@ gst_util_get_string_arg (GObject *object, const gchar *argname)
gpointer gpointer
gst_util_get_pointer_arg (GObject *object, const gchar *argname) gst_util_get_pointer_arg (GObject *object, const gchar *argname)
{ {
GValue value = {0, }; GValue value;
ZERO (value);
g_value_init (&value, G_TYPE_POINTER); g_value_init (&value, G_TYPE_POINTER);
g_object_get_property(G_OBJECT(object),argname,&value); g_object_get_property(G_OBJECT(object),argname,&value);

View file

@ -54,6 +54,7 @@ gst_xml_get_type(void)
sizeof(GstXML), sizeof(GstXML),
0, 0,
(GInstanceInitFunc)gst_xml_init, (GInstanceInitFunc)gst_xml_init,
NULL
}; };
xml_type = g_type_register_static (GST_TYPE_OBJECT, "GstXml", &xml_info, 0); xml_type = g_type_register_static (GST_TYPE_OBJECT, "GstXml", &xml_info, 0);
} }

View file

@ -121,6 +121,7 @@ gst_queue_get_type(void)
sizeof(GstQueue), sizeof(GstQueue),
4, 4,
(GInstanceInitFunc)gst_queue_init, (GInstanceInitFunc)gst_queue_init,
NULL
}; };
queue_type = g_type_register_static (GST_TYPE_ELEMENT, "GstQueue", &queue_info, 0); queue_type = g_type_register_static (GST_TYPE_ELEMENT, "GstQueue", &queue_info, 0);
} }