rem: scrsaver_init (bvw->priv->display);
context: bacon_video_widget_realize (GtkWidget *widget){	GdkWindowAttr attr;	BaconVideoWidget *bvw;	bvw = BACON_VIDEO_WIDGET (widget);	/* set realized flag */	GTK_WIDGET_SET_FLAGS (widget, GTK_REALIZED);	xine_close (bvw->priv->stream);	xine_event_dispose_queue (bvw->priv->ev_queue);	xine_dispose (bvw->priv->stream);	xine_close_video_driver(bvw->priv->xine, bvw->priv->vo_driver);	attr.x = widget->allocation.x;	attr.y = widget->allocation.y;	attr.width = widget->allocation.width;	attr.height = widget->allocation.height;	attr.window_type = GDK_WINDOW_CHILD;	attr.wclass = GDK_INPUT_OUTPUT;	attr.event_mask = gtk_widget_get_events (widget) | GDK_EXPOSURE_MASK		| GDK_POINTER_MOTION_MASK		| GDK_BUTTON_PRESS_MASK | GDK_KEY_PRESS_MASK;	widget->window = gdk_window_new (gtk_widget_get_parent_window (widget),			&attr, GDK_WA_X | GDK_WA_Y);	gdk_window_show (widget->window);	/* Flush, so that the window is really shown */	gdk_flush ();	gdk_window_set_user_data (widget->window, bvw);	bvw->priv->video_window = widget->window;	/* track configure events of toplevel window */	g_signal_connect (G_OBJECT (gtk_widget_get_toplevel (widget)),			"configure-event",			G_CALLBACK (configure_cb), bvw);	bvw->priv->display = XOpenDisplay (gdk_display_get_name			(gdk_display_get_default ()));	bvw->priv->screen = DefaultScreen (bvw->priv->display);	/* load the video driver */	bvw->priv->vo_driver = load_video_out_driver (bvw, bvw->priv->null_out);	g_assert (bvw->priv->vo_driver != NULL);	if (bvw->priv->null_out == FALSE)		bvw->priv->vis = xine_post_init (bvw->priv->xine, "goom", 0,				&bvw->priv->ao_driver, &bvw->priv->vo_driver);	bvw->priv->stream = xine_stream_new (bvw->priv->xine,			bvw->priv->ao_driver, bvw->priv->vo_driver);	bvw->priv->ev_queue = xine_event_new_queue (bvw->priv->stream);	/* Setup xine events, the screensaver and the event filter */	xine_event_create_listener_thread (bvw->priv->ev_queue,			xine_event, (void *) bvw);	/* Setup the default screen stuff */	update_fullscreen_size (bvw);	g_signal_connect (G_OBJECT (gdk_screen_get_default ()),			"size-changed", G_CALLBACK (size_changed_cb), bvw);	scrsaver_init (bvw->priv->display);	return;}