src/hg/makeDb/hgFindSpec/hgFindSpec.c 1.10

1.10 2009/05/19 04:42:27 angie
addVersion: when strict-checking existence of xrefTable, use sqlTableExists instead of hTableOrSplitExists because xrefTable might be db.table.
Index: src/hg/makeDb/hgFindSpec/hgFindSpec.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/makeDb/hgFindSpec/hgFindSpec.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -b -B -U 4 -r1.9 -r1.10
--- src/hg/makeDb/hgFindSpec/hgFindSpec.c	2 Oct 2008 16:09:24 -0000	1.9
+++ src/hg/makeDb/hgFindSpec/hgFindSpec.c	19 May 2009 04:42:27 -0000	1.10
@@ -57,15 +57,21 @@
 	    if (verboseLevel() > 1)
 		printf("%s missing\n", hfs->searchTable);
             slRemoveEl(&hfsList, hfs);
             }
-	else if (hfs->xrefTable[0] != 0 &&
-                 ! hTableOrSplitExists(database, hfs->xrefTable))
+	else if (hfs->xrefTable[0] != 0)
+	    {
+	    // Use sqlTableExists because xrefTable might be $db.$table,
+	    // not supported by hTableExists / hTableOrSplitExists
+	    struct sqlConnection *conn = hAllocConn(database);
+	    if (!sqlTableExists(conn, hfs->xrefTable))
 	    {
 	    if (verboseLevel() > 1)
 		printf("%s (xref) missing\n", hfs->xrefTable);
             slRemoveEl(&hfsList, hfs);
 	    }
+	    hFreeConn(&conn);
+	    }
         }
     }
 
 for (hfs = hfsList; hfs != NULL; hfs = hfsNext)