ext/gnomevfs/gstgnomevfssink.c: Run glib's default signal handler (??) in RUN_CLEANUP rather than

Original commit message from CVS:
* ext/gnomevfs/gstgnomevfssink.c:
(_gst_boolean_allow_overwrite_accumulator),
(gst_gnomevfssink_class_init), (gst_gnomevfssink_open_file):
Run glib's default signal handler (??) in RUN_CLEANUP rather than
RUN_LAST, and don't use that to set the accumulator value because
then it's always FALSE.
This commit is contained in:
Ronald S. Bultje 2004-05-09 16:48:42 +00:00
parent 7180b58bb3
commit 9e9573ff1f
2 changed files with 14 additions and 4 deletions

View file

@ -1,3 +1,12 @@
2004-05-09 Ronald Bultje <rbultje@ronald.bitfreak.net>
* ext/gnomevfs/gstgnomevfssink.c:
(_gst_boolean_allow_overwrite_accumulator),
(gst_gnomevfssink_class_init), (gst_gnomevfssink_open_file):
Run glib's default signal handler (??) in RUN_CLEANUP rather than
RUN_LAST, and don't use that to set the accumulator value because
then it's always FALSE.
2004-05-09 Ronald Bultje <rbultje@ronald.bitfreak.net> 2004-05-09 Ronald Bultje <rbultje@ronald.bitfreak.net>
* gst-libs/gst/riff/riff-media.c: * gst-libs/gst/riff/riff-media.c:

View file

@ -163,7 +163,8 @@ _gst_boolean_allow_overwrite_accumulator (GSignalInvocationHint * ihint,
gboolean allow_overwrite; gboolean allow_overwrite;
allow_overwrite = g_value_get_boolean (handler_return); allow_overwrite = g_value_get_boolean (handler_return);
g_value_set_boolean (return_accu, allow_overwrite); if (!(ihint->run_type & G_SIGNAL_RUN_CLEANUP))
g_value_set_boolean (return_accu, allow_overwrite);
/* stop emission if signal doesn't allow overwriting */ /* stop emission if signal doesn't allow overwriting */
return allow_overwrite; return allow_overwrite;
@ -192,7 +193,7 @@ gst_gnomevfssink_class_init (GstGnomeVFSSinkClass * klass)
gst_gnomevfssink_signals[SIGNAL_ERASE_ASK] = gst_gnomevfssink_signals[SIGNAL_ERASE_ASK] =
g_signal_new ("allow-overwrite", G_TYPE_FROM_CLASS (klass), g_signal_new ("allow-overwrite", G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GstGnomeVFSSinkClass, erase_ask), G_SIGNAL_RUN_CLEANUP, G_STRUCT_OFFSET (GstGnomeVFSSinkClass, erase_ask),
_gst_boolean_allow_overwrite_accumulator, NULL, _gst_boolean_allow_overwrite_accumulator, NULL,
gst_marshal_BOOLEAN__POINTER, G_TYPE_BOOLEAN, 1, G_TYPE_POINTER); gst_marshal_BOOLEAN__POINTER, G_TYPE_BOOLEAN, 1, G_TYPE_POINTER);
@ -340,8 +341,8 @@ gst_gnomevfssink_open_file (GstGnomeVFSSink * sink)
GNOME_VFS_URI_HIDE_PASSWORD); GNOME_VFS_URI_HIDE_PASSWORD);
GST_ELEMENT_ERROR (sink, RESOURCE, OPEN_WRITE, GST_ELEMENT_ERROR (sink, RESOURCE, OPEN_WRITE,
(_("Could not open vfs file \"%s\" for writing."), filename), (_("Could not open vfs file \"%s\" for writing: %s."),
GST_ERROR_SYSTEM); filename, gnome_vfs_result_to_string (result)), GST_ERROR_SYSTEM);
g_free (filename); g_free (filename);
return FALSE; return FALSE;
} }