171a5b44a2fa8be1dc747bbd8d620c713edd7027
angie
  Wed Oct 23 11:02:22 2019 -0700
Now that saved session custom track table names can have a customData db prefix (like db=customTrash and table=customDataNN.t1_...), asObjectFromFields needs to skip past the dot to avoid autoSql parse error.  refs #24358.

diff --git src/hg/lib/hAnno.c src/hg/lib/hAnno.c
index 381d12d..07e9653 100644
--- src/hg/lib/hAnno.c
+++ src/hg/lib/hAnno.c
@@ -70,30 +70,34 @@
     if (!sameString(field->field, asCol->name))
 	{
 	columnsMatch = FALSE;
 	break;
 	}
     }
 if (field != NULL || asCol != NULL)
     columnsMatch = FALSE;
 return columnsMatch;
 }
 
 static struct asObject *asObjectFromFields(char *name, struct sqlFieldInfo *fieldList,
                                            boolean skipBin)
 /* Make autoSql text from SQL fields and pass it to asParse. */
 {
+// If name is db.table, skip the db.:
+char *dot = strchr(name, '.');
+if (dot)
+    name = dot + 1;
 struct dyString *dy = dyStringCreate("table %s\n"
 				     "\"Column names grabbed from mysql\"\n"
 				     "    (\n", name);
 struct sqlFieldInfo *field;
 for (field = fieldList;  field != NULL;  field = field->next)
     {
     if (skipBin && field == fieldList && sameString("bin", field->field))
         continue;
     char *sqlType = field->type;
     // hg19.wgEncodeOpenChromSynthGm12878Pk.pValue has sql type "float unsigned",
     // and I'd rather pretend it's just a float than work unsigned floats into autoSql.
     if (sameString(sqlType, "float unsigned"))
 	sqlType = "float";
     char *asType = asTypeNameFromSqlType(sqlType);
     if (asType == NULL)