src/hg/hgGenome/hgGenome.c 1.64
1.64 2009/04/06 05:32:09 galt
add function checkAndClear so that do commands are not stuck in cart after an errAbort
Index: src/hg/hgGenome/hgGenome.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/hgGenome/hgGenome.c,v
retrieving revision 1.63
retrieving revision 1.64
diff -b -B -U 4 -r1.63 -r1.64
--- src/hg/hgGenome/hgGenome.c 11 Mar 2009 19:24:31 -0000 1.63
+++ src/hg/hgGenome/hgGenome.c 6 Apr 2009 05:32:09 -0000 1.64
@@ -456,49 +456,58 @@
addPadToBed3(bedList, -pad, pad);
return bedList;
}
+boolean checkAndClear(char *cartVar)
+/* If cart var exists, clear it and return TRUE */
+{
+if (cartVarExists(cart, cartVar))
+ {
+ cartRemove(cart, cartVar); /* in case of errAbort */
+ return TRUE;
+ }
+return FALSE;
+}
+
void dispatchPage()
/* Look at command variables in cart and figure out which
* page to draw. */
{
struct sqlConnection *conn = hAllocConn(database);
-if (cartVarExists(cart, hggConfigure))
+if (checkAndClear(hggConfigure))
{
configurePage();
}
-else if (cartVarExists(cart, hggConfigureOne))
+else if (checkAndClear(hggConfigureOne))
{
configureOnePage();
}
-else if (cartVarExists(cart, hggUpload))
+else if (checkAndClear(hggUpload))
{
uploadPage();
}
-else if (cartVarExists(cart, hggSubmitUpload))
+else if (checkAndClear(hggSubmitUpload))
{
submitUpload(conn);
}
-else if (cartVarExists(cart, hggImport))
+else if (checkAndClear(hggImport))
{
importPage(conn);
}
-else if (cartVarExists(cart, hggSubmitImport))
+else if (checkAndClear(hggSubmitImport))
{
submitImport(conn);
}
-else if (cartVarExists(cart, hggCorrelate))
+else if (checkAndClear(hggCorrelate))
{
correlatePage(conn);
}
-else if (cartVarExists(cart, hggBrowse))
+else if (checkAndClear(hggBrowse))
{
- cartRemove(cart, hggBrowse); // just in case of errAbort
browseRegions(conn);
}
-else if (cartVarExists(cart, hggSort))
+else if (checkAndClear(hggSort))
{
- cartRemove(cart, hggSort); // just in case of errAbort
sortGenes(conn);
}
else
{