src/hg/lib/customFactory.c 1.103

1.103 2009/09/15 22:02:00 kent
Making sure that bigWig or bigBed file referred to in bigDataUrl actually exists.
Index: src/hg/lib/customFactory.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/lib/customFactory.c,v
retrieving revision 1.102
retrieving revision 1.103
diff -b -B -U 4 -r1.102 -r1.103
--- src/hg/lib/customFactory.c	19 Aug 2009 06:02:57 -0000	1.102
+++ src/hg/lib/customFactory.c	15 Sep 2009 22:02:00 -0000	1.103
@@ -25,8 +25,10 @@
 #include "trashDir.h"
 #include "jsHelper.h"
 #include "encode/encodePeak.h"
 #include "udc.h"
+#include "bigWig.h"
+#include "bigBed.h"
 
 static char const rcsid[] = "$Id$";
 
 /*** Utility routines used by many factories. ***/
@@ -1498,8 +1500,10 @@
 struct hash *settings = track->tdb->settingsHash;
 char *bigDataUrl = hashFindVal(settings, "bigDataUrl");
 if (bigDataUrl == NULL)
     errAbort("Missing bigDataUrl setting from track of type=bigWig");
+struct bbiFile *bbi = bigWigFileOpen(bigDataUrl);	// Just for error checking
+bbiFileClose(&bbi);
 return track;
 }
 
 static struct customFactory bigWigFactory = 
@@ -1530,8 +1534,10 @@
 struct hash *settings = track->tdb->settingsHash;
 char *bigDataUrl = hashFindVal(settings, "bigDataUrl");
 if (bigDataUrl == NULL)
     errAbort("Missing bigDataUrl setting from track of type=bigBed");
+struct bbiFile *bbi = bigBedFileOpen(bigDataUrl);	// Just for error checking
+bbiFileClose(&bbi);
 return track;
 }
 
 static struct customFactory bigBedFactory =