+2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
+
+ * docs/gst/tmpl/gstconfig.sgml:
+ * gst/gstconfig.h.in:
+ move documentation for some symbols. Add doc for GST_PTR_FORMAT
+ * testsuite/debug/printf_extension.c: (main):
+ Do not use GST_PTR_FORMAT on pointers to types with
+ sizeof < sizeof(gpointer). Fixes test on 64-bit
+ * testsuite/elements/property.h:
+ use correct printf format
+
2005-05-02 Wim Taymans <wim@fluendo.com>
* docs/design/draft-push-pull.txt:
@GST_DISABLE_URI_DEFINE@
/* printf extension format */
+/**
+ * GST_PTR_FORMAT:
+ *
+ * printf format type used to debug GStreamer types.
+ * This can only be used on types whose size is >= sizeof(gpointer).
+ */
@GST_PRINTF_EXTENSION_FORMAT_DEFINE@
/* whether or not the CPU supports unaligned access */
# define GST_DISABLE_LOADSAVE_REGISTRY
#endif
+/**
+ * GST_EXPORT:
+ *
+ * Export the given variable from the built shared object.
+ *
+ * On Windows, this exports the variable from the DLL.
+ * On other platforms, this gets defined to "extern".
+ */
+/**
+ * GST_PLUGIN_EXPORT:
+ *
+ * Export the plugin's definition.
+ *
+ * On Windows, this exports the plugin definition from the DLL.
+ * On other platforms, this gets defined as a no-op.
+ */
#ifdef WIN32
#define GST_PLUGIN_EXPORT __declspec(dllexport) extern
#ifdef GST_EXPORTS
#define GST_EXPORT __declspec(dllimport) extern
#endif
#else /* not WIN32 */
-#define GST_PLUGIN_EXPORT
+#define GST_PLUGIN_EXPORT
#define GST_EXPORT extern
#endif
{
GstCaps *caps;
GstElement *element;
- G_GNUC_UNUSED int zero = 0;
+ G_GNUC_UNUSED gpointer null = NULL;
+
+ /* G_GNUC_UNUSED int zero = 0; */
gst_init (&argc, &argv);
GST_ERROR ("This should print caps: %" GST_PTR_FORMAT, caps);
GST_ERROR ("This should print an object: %" GST_PTR_FORMAT, element);
GST_ERROR ("This should print null: %" GST_PTR_FORMAT, NULL);
- GST_ERROR ("This should print a pointer: %" GST_PTR_FORMAT, &zero);
- //GST_ERROR ("This should print a pointer: %" GST_PTR_FORMAT, (void *)1);
+ GST_ERROR ("This should print a pointer: %" GST_PTR_FORMAT, &null);
+ /* 64 bit address to a 32 bit int will cause the GObject interpretation
+ * to segfault; since GST_PTR_FORMAT only works on stuff with
+ * sizeof(gpointer) */
+ /* GST_ERROR ("This should print a pointer: %" GST_PTR_FORMAT, &zero); */
+
+ /* GST_ERROR ("This should print a pointer: %" GST_PTR_FORMAT, (void *)1); */
return 0;
}
g_object_get_property (G_OBJECT (orig), pspec->name, &value);
/* fix current bug with g_strdup_value_contents not working with gint64 */
if (G_IS_PARAM_SPEC_INT64 (pspec))
- str = g_strdup_printf ("%lld", g_value_get_int64 (&value));
+ str = g_strdup_printf ("%" G_GINT64_FORMAT, g_value_get_int64 (&value));
else
str = g_strdup_value_contents (&value);
g_print ("%s: %s = %s\n", GST_OBJECT_NAME (orig), pspec->name, str);
{
GstCaps *caps;
GstElement *element;
- G_GNUC_UNUSED int zero = 0;
+ G_GNUC_UNUSED gpointer null = NULL;
+
+ /* G_GNUC_UNUSED int zero = 0; */
gst_init (&argc, &argv);
GST_ERROR ("This should print caps: %" GST_PTR_FORMAT, caps);
GST_ERROR ("This should print an object: %" GST_PTR_FORMAT, element);
GST_ERROR ("This should print null: %" GST_PTR_FORMAT, NULL);
- GST_ERROR ("This should print a pointer: %" GST_PTR_FORMAT, &zero);
- //GST_ERROR ("This should print a pointer: %" GST_PTR_FORMAT, (void *)1);
+ GST_ERROR ("This should print a pointer: %" GST_PTR_FORMAT, &null);
+ /* 64 bit address to a 32 bit int will cause the GObject interpretation
+ * to segfault; since GST_PTR_FORMAT only works on stuff with
+ * sizeof(gpointer) */
+ /* GST_ERROR ("This should print a pointer: %" GST_PTR_FORMAT, &zero); */
+
+ /* GST_ERROR ("This should print a pointer: %" GST_PTR_FORMAT, (void *)1); */
return 0;
}
g_object_get_property (G_OBJECT (orig), pspec->name, &value);
/* fix current bug with g_strdup_value_contents not working with gint64 */
if (G_IS_PARAM_SPEC_INT64 (pspec))
- str = g_strdup_printf ("%lld", g_value_get_int64 (&value));
+ str = g_strdup_printf ("%" G_GINT64_FORMAT, g_value_get_int64 (&value));
else
str = g_strdup_value_contents (&value);
g_print ("%s: %s = %s\n", GST_OBJECT_NAME (orig), pspec->name, str);