rem: xine_config_lookup_entry (bvw->priv->xine, "misc.amp_level", &entry); entry.num_value = bvw->priv->volume; xine_config_update_entry (bvw->priv->xine, &entry);
add: gconf_client_set_int (bvw->priv->gc, GCONF_PREFIX"/volume", bvw->priv->volume, NULL);
context: bacon_video_widget_unrealize (GtkWidget *widget){	BaconVideoWidget *bvw;	char *configfile;	xine_cfg_entry_t entry;	int speed;	g_return_if_fail (widget != NULL);	g_return_if_fail (BACON_IS_VIDEO_WIDGET (widget));	bvw = BACON_VIDEO_WIDGET (widget);	g_source_remove (bvw->priv->tick_id);	speed = xine_get_param (bvw->priv->stream, XINE_PARAM_SPEED);	if (speed != XINE_SPEED_PAUSE)		show_vfx_update (bvw, FALSE);	/* stop the playback */	xine_stop (bvw->priv->stream);	xine_close (bvw->priv->stream);	/* Put the current volume in the config system */	if (bacon_video_widget_can_set_volume (bvw) != FALSE)	{		xine_config_lookup_entry (bvw->priv->xine,				"misc.amp_level", &entry);		entry.num_value = bvw->priv->volume;		xine_config_update_entry (bvw->priv->xine, &entry);	}	/* Kill the TV out */#ifdef HAVE_NVTV        nvtv_simple_exit();#endif/* FIXME missing stuff from libxine includes (<= 1-rc7) */#ifndef XINE_GUI_SEND_WILL_DESTROY_DRAWABLE#define XINE_GUI_SEND_WILL_DESTROY_DRAWABLE 9#endif	xine_port_send_gui_data (bvw->priv->vo_driver,			XINE_GUI_SEND_WILL_DESTROY_DRAWABLE,			(void*)bvw->priv->video_window);	/* Hide all windows */	if (GTK_WIDGET_MAPPED (widget))		gtk_widget_unmap (widget);	GTK_WIDGET_UNSET_FLAGS (widget, GTK_MAPPED);	/* Get rid of the rest of the stream */	xine_dispose (bvw->priv->stream);	xine_event_dispose_queue (bvw->priv->ev_queue);	bvw->priv->stream = NULL;	/* save config */	configfile = g_build_path (G_DIR_SEPARATOR_S,			g_get_home_dir (), CONFIG_FILE, NULL);	xine_config_save (bvw->priv->xine, configfile);	g_free (configfile);	/* Kill the drivers */	if (bvw->priv->vo_driver != NULL)		xine_close_video_driver (bvw->priv->xine,				bvw->priv->vo_driver);	if (bvw->priv->ao_driver != NULL)		xine_close_audio_driver (bvw->priv->xine,				bvw->priv->ao_driver);	/* stop event thread */	xine_exit (bvw->priv->xine);	bvw->priv->xine = NULL;	/* This destroys widget->window and unsets the realized flag */	if (GTK_WIDGET_CLASS (parent_class)->unrealize)		(*GTK_WIDGET_CLASS (parent_class)->unrealize) (widget);}