rem: g_free (fourcc_str);
context: bacon_video_widget_open (BaconVideoWidget *bvw, const char *mrl,		GError **gerror){	int error;	g_return_val_if_fail (mrl != NULL, FALSE);	g_return_val_if_fail (BACON_IS_VIDEO_WIDGET (bvw), FALSE);	g_return_val_if_fail (bvw->priv->xine != NULL, FALSE);	g_return_val_if_fail (bvw->priv->mrl == NULL, FALSE);	bvw->priv->video_fcc = 0;	bvw->priv->audio_fcc = 0;	error = xine_open (bvw->priv->stream, mrl);	if (error == 0)	{		bacon_video_widget_close (bvw);		xine_error (bvw, gerror);		return FALSE;	}	if (xine_get_stream_info (bvw->priv->stream,				XINE_STREAM_INFO_VIDEO_HANDLED) == FALSE			|| (xine_get_stream_info (bvw->priv->stream,					XINE_STREAM_INFO_HAS_VIDEO) == FALSE				&& xine_get_stream_info (bvw->priv->stream,				XINE_STREAM_INFO_AUDIO_HANDLED) == FALSE))	{		char *fourcc_str, *name;		g_signal_emit (G_OBJECT (bvw),				bvw_table_signals[GOT_METADATA], 0, NULL);		bvw->priv->video_fcc = xine_get_stream_info (bvw->priv->stream,				XINE_STREAM_INFO_VIDEO_FOURCC);		fourcc_str = get_fourcc_string (bvw->priv->video_fcc);		name = g_strdup (xine_get_meta_info (bvw->priv->stream,				XINE_META_INFO_VIDEOCODEC));		/* Only change the audio_fcc if we're on x86 */		if (xine_get_stream_info				(bvw->priv->stream,				 XINE_STREAM_INFO_AUDIO_HANDLED) == FALSE)		{			bvw->priv->audio_fcc = xine_get_stream_info				(bvw->priv->stream,				 XINE_STREAM_INFO_AUDIO_FOURCC);		}		bacon_video_widget_close (bvw);		g_set_error (gerror, 0, 0,				_("Video codec '%s' is not handled. You might need to install additional plugins to be able to play some types of movies"),				name ? name : fourcc_str);		g_free (fourcc_str);		g_free (name);		return FALSE;	}	if (xine_get_stream_info (bvw->priv->stream,				XINE_STREAM_INFO_HAS_VIDEO) == FALSE		&& bvw->priv->ao_driver == NULL		&& bvw->priv->null_out != FALSE)	{		g_signal_emit (G_OBJECT (bvw),				bvw_table_signals[GOT_METADATA], 0, NULL);		bacon_video_widget_close (bvw);		g_set_error (gerror, 0, 0,				_("This is an audio-only file, and there is no audio output available."));		return FALSE;	}	show_vfx_update (bvw, bvw->priv->show_vfx);	bvw->priv->mrl = g_strdup (mrl);	g_signal_emit (G_OBJECT (bvw),			bvw_table_signals[GOT_METADATA], 0, NULL);	return TRUE;}