diff options
Diffstat (limited to 'lib/gtk-vlc-player')
-rw-r--r-- | lib/gtk-vlc-player/Makefile.am | 14 | ||||
-rw-r--r-- | lib/gtk-vlc-player/cclosure-marshallers.list | 2 | ||||
-rw-r--r-- | lib/gtk-vlc-player/gtk-vlc-player.c | 10 |
3 files changed, 21 insertions, 5 deletions
diff --git a/lib/gtk-vlc-player/Makefile.am b/lib/gtk-vlc-player/Makefile.am index 467c630..1f27aa5 100644 --- a/lib/gtk-vlc-player/Makefile.am +++ b/lib/gtk-vlc-player/Makefile.am @@ -2,8 +2,11 @@ AM_CFLAGS = -Wall vlcplayer_datadir = @datarootdir@/gtk-vlc-player +BUILT_SOURCES = cclosure-marshallers.c cclosure-marshallers.h + lib_LTLIBRARIES = libgtk-vlc-player.la libgtk_vlc_player_la_SOURCES = gtk-vlc-player.c gtk-vlc-player.h +nodist_libgtk_vlc_player_la_SOURCES = $(BUILT_SOURCES) libgtk_vlc_player_la_CFLAGS = $(AM_CFLAGS) \ @LIBGTK_CFLAGS@ @LIBVLC_CFLAGS@ @@ -14,3 +17,14 @@ libgtk_vlc_player_la_LDFLAGS = -no-undefined -shared -bindir @bindir@ \ include_HEADERS = gtk-vlc-player.h dist_vlcplayer_data_DATA = gtk-vlc-player-catalog.xml + +dist_noinst_DATA = cclosure-marshallers.list +CLEANFILES = $(BUILT_SOURCES) + +MARSHAL_PREFIX = gtk_vlc_player_marshal + +cclosure-marshallers.c : cclosure-marshallers.list + @GLIB_GENMARSHAL@ --prefix $(MARSHAL_PREFIX) --body $< >$@ + +cclosure-marshallers.h : cclosure-marshallers.list + @GLIB_GENMARSHAL@ --prefix $(MARSHAL_PREFIX) --header $< >$@ diff --git a/lib/gtk-vlc-player/cclosure-marshallers.list b/lib/gtk-vlc-player/cclosure-marshallers.list new file mode 100644 index 0000000..6ed01a2 --- /dev/null +++ b/lib/gtk-vlc-player/cclosure-marshallers.list @@ -0,0 +1,2 @@ +# Standard marshallers for "time-changed" and "length-changed" signal callbacks +VOID:INT64 diff --git a/lib/gtk-vlc-player/gtk-vlc-player.c b/lib/gtk-vlc-player/gtk-vlc-player.c index a3bc3d8..431dad4 100644 --- a/lib/gtk-vlc-player/gtk-vlc-player.c +++ b/lib/gtk-vlc-player/gtk-vlc-player.c @@ -13,6 +13,7 @@ #include <vlc/vlc.h> +#include "cclosure-marshallers.h" #include "gtk-vlc-player.h" static void gtk_vlc_player_class_init(GtkVlcPlayerClass *klass); @@ -83,15 +84,14 @@ gtk_vlc_player_class_init(GtkVlcPlayerClass *klass) gobject_class->dispose = gtk_vlc_player_dispose; gobject_class->finalize = gtk_vlc_player_finalize; - /** @todo use correct marshal, this one could fail on 32-bit platforms */ gtk_vlc_player_signals[TIME_CHANGED_SIGNAL] = g_signal_new("time-changed", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_FIRST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(GtkVlcPlayerClass, time_changed), NULL, NULL, - g_cclosure_marshal_VOID__LONG, G_TYPE_NONE, - 1, G_TYPE_INT64); + gtk_vlc_player_marshal_VOID__INT64, + G_TYPE_NONE, 1, G_TYPE_INT64); gtk_vlc_player_signals[LENGTH_CHANGED_SIGNAL] = g_signal_new("length-changed", @@ -99,8 +99,8 @@ gtk_vlc_player_class_init(GtkVlcPlayerClass *klass) G_SIGNAL_RUN_FIRST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(GtkVlcPlayerClass, length_changed), NULL, NULL, - g_cclosure_marshal_VOID__LONG, G_TYPE_NONE, - 1, G_TYPE_INT64); + gtk_vlc_player_marshal_VOID__INT64, + G_TYPE_NONE, 1, G_TYPE_INT64); g_type_class_add_private(klass, sizeof(GtkVlcPlayerPrivate)); } |