shell: Don't try to switch to a NULL shell surface.

Fixes the crash from alt+tab when there's a fullscreen surface.
diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
index f87da92..632579f 100644
--- a/desktop-shell/shell.c
+++ b/desktop-shell/shell.c
@@ -5172,10 +5172,9 @@
 
 	wl_list_for_each(view, &ws->layer.view_list, layer_link) {
 		shsurf = get_shell_surface(view->surface);
-		switch (shsurf->type) {
-		case SHELL_SURFACE_TOPLEVEL:
-			if (shsurf->parent)
-				break;
+		if (shsurf &&
+		    shsurf->type == SHELL_SURFACE_TOPLEVEL &&
+		    shsurf->parent == NULL) {
 			if (first == NULL)
 				first = view->surface;
 			if (prev == switcher->current)
@@ -5184,12 +5183,6 @@
 			view->alpha = 0.25;
 			weston_view_geometry_dirty(view);
 			weston_surface_damage(view->surface);
-			break;
-		case SHELL_SURFACE_POPUP:
-		case SHELL_SURFACE_XWAYLAND:
-		case SHELL_SURFACE_NONE:
-		default:
-			break;
 		}
 
 		if (is_black_surface(view->surface, NULL)) {