diff -up lightdm-gtk-greeter-1.8.5/src/lightdm-gtk-greeter.c.bg_crash lightdm-gtk-greeter-1.8.5/src/lightdm-gtk-greeter.c --- lightdm-gtk-greeter-1.8.5/src/lightdm-gtk-greeter.c.bg_crash 2014-05-05 13:39:10.833190035 -0500 +++ lightdm-gtk-greeter-1.8.5/src/lightdm-gtk-greeter.c 2014-05-05 13:41:53.725481558 -0500 @@ -2060,7 +2060,7 @@ set_background (GdkPixbuf *new_bg) { gdk_screen_get_monitor_geometry (screen, monitor, &monitor_geometry); - if (bg) + if (bg && (monitor_geometry.width > 0) && (monitor_geometry.height > 0)) { p_width = gdk_pixbuf_get_width (bg); p_height = gdk_pixbuf_get_height (bg);