diff --git a/src/zmapFeature/zmapFeature.c b/src/zmapFeature/zmapFeature.c
index 834cb900acf43159abfd87d9652d7191b262d3d0..d244aac32527d33def074010bc09710b181760c4 100755
--- a/src/zmapFeature/zmapFeature.c
+++ b/src/zmapFeature/zmapFeature.c
@@ -27,9 +27,9 @@
  *              
  * Exported functions: See zmapView_P.h
  * HISTORY:
- * Last edited: Feb  9 09:47 2009 (edgrif)
+ * Last edited: Feb  9 15:47 2009 (rds)
  * Created: Fri Jul 16 13:05:58 2004 (edgrif)
- * CVS info:   $Id: zmapFeature.c,v 1.104 2009-02-09 10:06:25 edgrif Exp $
+ * CVS info:   $Id: zmapFeature.c,v 1.105 2009-02-09 15:48:13 rds Exp $
  *-------------------------------------------------------------------
  */
 
@@ -2875,8 +2875,12 @@ static void addFeatureModeCB(gpointer key, gpointer data, gpointer user_data)
 	case ZMAPSTYLE_MODE_PEP_SEQUENCE:
 	  mode = ZMAPSTYLE_MODE_TEXT ;
 	  break ;
-	  /* What about glyph and graph..... */
-
+	  /* What about glyph and graph..... AND TEXT!!!! */
+	case ZMAPSTYLE_MODE_TEXT:
+	case ZMAPSTYLE_MODE_GLYPH:
+	case ZMAPSTYLE_MODE_GRAPH:
+	  mode = feature->type;	/* grrrrr is this really correct? */
+	  break;
 	default:
 	  zMapAssertNotReached() ;
 	  break ;
diff --git a/src/zmapFeature/zmapFeatureUtils.c b/src/zmapFeature/zmapFeatureUtils.c
index 5fe4c9f9bf4e83596b0490eef0fef12c9aebffbb..95925546bf6980bd3b659dc479798674dc18de26 100755
--- a/src/zmapFeature/zmapFeatureUtils.c
+++ b/src/zmapFeature/zmapFeatureUtils.c
@@ -26,9 +26,9 @@
  *              
  * Exported functions: See ZMap/zmapFeature.h
  * HISTORY:
- * Last edited: Feb  9 09:49 2009 (edgrif)
+ * Last edited: Feb  9 15:47 2009 (rds)
  * Created: Tue Nov 2 2004 (rnc)
- * CVS info:   $Id: zmapFeatureUtils.c,v 1.64 2009-02-09 10:06:48 edgrif Exp $
+ * CVS info:   $Id: zmapFeatureUtils.c,v 1.65 2009-02-09 15:48:13 rds Exp $
  *-------------------------------------------------------------------
  */
 
@@ -205,9 +205,9 @@ gboolean zMapFeatureIsSane(ZMapFeature feature, char **insanity_explained)
   if(sane)
     {
       if(feature->type <= ZMAPSTYLE_MODE_INVALID ||
-         feature->type >  ZMAPSTYLE_MODE_PEP_SEQUENCE)
+         feature->type >  ZMAPSTYLE_MODE_META) /* Keep in step with zmapStyle.h */
         {
-          insanity = g_strdup_printf("Feature '%s' [%s] has invalid type.",
+          insanity = g_strdup_printf("Feature '%s' [%s] has invalid type.", /* keep in step with zmapStyle.h */
                                      (char *)g_quark_to_string(feature->original_id),
                                      (char *)g_quark_to_string(feature->unique_id));
           sane = FALSE;
@@ -279,8 +279,13 @@ gboolean zMapFeatureIsSane(ZMapFeature feature, char **insanity_explained)
         case ZMAPSTYLE_MODE_BASIC:
         case ZMAPSTYLE_MODE_RAW_SEQUENCE:
         case ZMAPSTYLE_MODE_PEP_SEQUENCE:
+	case ZMAPSTYLE_MODE_TEXT:
+	case ZMAPSTYLE_MODE_GRAPH:
+	case ZMAPSTYLE_MODE_GLYPH:
           zMapLogWarning("%s", "This part of zMapFeatureIsSane() needs writing!");
           break;
+	case ZMAPSTYLE_MODE_META:
+	  break;
         default:
           zMapAssertNotReached();
           break;