Date: Thu, 8 Nov 2018 15:00:34 +0000 (UTC) From: Guido Falsi <madpilot@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r484458 - in head/sysutils/xfburn: . files Message-ID: <201811081500.wA8F0YSF076574@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: madpilot Date: Thu Nov 8 15:00:34 2018 New Revision: 484458 URL: https://svnweb.freebsd.org/changeset/ports/484458 Log: Add patch to stop xfburn crashing when trying to burn an audio CD. Reported and tested by: Holger Wagemann <Holger.Wagemann@posteo.de> Added: head/sysutils/xfburn/files/patch-xfburn_xfburn-transcoder-gst.c (contents, props changed) Modified: head/sysutils/xfburn/Makefile Modified: head/sysutils/xfburn/Makefile ============================================================================== --- head/sysutils/xfburn/Makefile Thu Nov 8 14:57:44 2018 (r484457) +++ head/sysutils/xfburn/Makefile Thu Nov 8 15:00:34 2018 (r484458) @@ -3,6 +3,7 @@ PORTNAME= xfburn PORTVERSION= 0.5.5 +PORTREVISION= 1 CATEGORIES= sysutils MASTER_SITES= XFCE/src/apps/${PORTNAME}/${PORTVERSION:R} DIST_SUBDIR= xfce4 Added: head/sysutils/xfburn/files/patch-xfburn_xfburn-transcoder-gst.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/xfburn/files/patch-xfburn_xfburn-transcoder-gst.c Thu Nov 8 15:00:34 2018 (r484458) @@ -0,0 +1,50 @@ +--- xfburn/xfburn-transcoder-gst.c.orig 2017-12-14 12:34:57 UTC ++++ xfburn/xfburn-transcoder-gst.c +@@ -221,8 +221,8 @@ xfburn_transcoder_gst_init (XfburnTranscoderGst * obj) + + /* if the mutex is locked, then we're not currently seeking + * information from gst */ ++ /* Actual locking in prepare and finish */ + g_mutex_init (&priv->gst_mutex); +- g_mutex_lock (&priv->gst_mutex); + + priv->discoverer = gst_discoverer_new(GST_SECOND, NULL); + } +@@ -492,19 +492,9 @@ bus_call (GstBus *bus, GstMessage *msg, gpointer data) + + if (strcmp (GST_OBJECT_NAME (GST_MESSAGE_SRC (msg)), "decoder") != 0) + break; +- +- if (!g_mutex_trylock (&priv->gst_mutex)) { +- g_critical ("Lock held by another thread, can't signal transcoding start!"); +- break; +- } else { +-#if DEBUG_GST > 0 +- DBG ("Locked mutex to signal transcoding start"); +-#endif +- } + + priv->gst_done = TRUE; + g_cond_signal (&priv->gst_cond); +- g_mutex_unlock (&priv->gst_mutex); + break; + } /* switch of priv->state */ + +@@ -835,6 +825,8 @@ prepare (XfburnTranscoder *trans, GError **error) + gboolean ret; + gint64 end_time; + ++ g_mutex_lock(&priv->gst_mutex); ++ + priv->tracks = g_slist_reverse (priv->tracks); + + priv->state = XFBURN_TRANSCODER_GST_STATE_TRANSCODE_START; +@@ -933,6 +925,8 @@ finish (XfburnTranscoder *trans) + } + */ + recreate_pipeline (gst); ++ ++ g_mutex_unlock (&priv->gst_mutex); + } + +
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201811081500.wA8F0YSF076574>