21a6584e8ecdbba6d802ab30f3ec564c08b7dcc3
galt
Sat Jun 29 02:11:16 2013 -0700
fixing callers of sqlGetField to use sqlSafeFrag
diff --git src/hg/hgGene/pseudoGene.c src/hg/hgGene/pseudoGene.c
index 88ecdb6..7232580 100644
--- src/hg/hgGene/pseudoGene.c
+++ src/hg/hgGene/pseudoGene.c
@@ -1,115 +1,115 @@
/* pseudoGene descriptions. */
#include "common.h"
#include "hash.h"
#include "linefile.h"
#include "dystring.h"
#include "spDb.h"
#include "hdb.h"
#include "web.h"
#include "genePred.h"
#include "bed.h"
#include "hgGene.h"
static boolean pseudoGeneExists(struct section *section,
struct sqlConnection *conn, char *geneId)
/* Return TRUE if mrna on this one. */
{
boolean result;
result = FALSE;
if (hTableExists(sqlGetDatabase(conn), "ucscRetroInfo"))
{
struct sqlResult *sr;
char **row;
char query[255];
sqlSafef(query, sizeof(query),
"select name from ucscRetroInfo where name='%s' or kgName='%s' or refseq='%s'",
geneId, geneId, geneId);
sr = sqlGetResult(conn, query);
if ((row = sqlNextRow(sr)) != NULL)
{
result = TRUE;
}
sqlFreeResult(&sr);
}
return(result);
}
static void pseudoGenePrint(struct section *section,
struct sqlConnection *conn, char *geneId)
/* Print out mrna descriptions annotations. */
{
struct sqlResult *sr;
char **row;
char condStr[255];
char *descID, *desc;
char *emptyStr;
char query[255];
char *name, *chrom, *chromStart, *chromEnd, *refseq, *rtype;
int score;
webPrintLinkTableStart();
webPrintLabelCell("Retro Id");
webPrintLabelCell("Type");
webPrintLabelCell("Score ");
webPrintLabelCell("Genome Location");
webPrintLabelCell("Description");
hPrintf("\n
");
emptyStr = cloneString("");
sqlSafef(query, sizeof(query),
"select distinct name, chrom, chromStart, chromEnd, refseq, type, score from ucscRetroInfo where name='%s' or kgName='%s' or refseq='%s'",
geneId, geneId, geneId);
sr = sqlGetResult(conn, query);
while ((row = sqlNextRow(sr)) != NULL)
{
name = row[0];
chrom = row[1];
chromStart = row[2];
chromEnd = row[3];
refseq = row[4];
rtype = row[5];
score = sqlUnsigned(row[6]);
desc = emptyStr;
- safef(condStr, sizeof(condStr), "acc='%s'", refseq);
+ sqlSafefFrag(condStr, sizeof(condStr), "acc='%s'", refseq);
descID= sqlGetField(database, "gbCdnaInfo", "description", condStr);
if (descID != NULL)
{
- safef(condStr, sizeof(condStr), "id=%s", descID);
+ sqlSafefFrag(condStr, sizeof(condStr), "id=%s", descID);
desc = sqlGetField(database, "description", "name", condStr);
if (desc == NULL) desc = emptyStr;
}
webPrintLinkCellStart();
hPrintf("%s", name, name);
webPrintLinkCellEnd();
webPrintLinkCellStart();
hPrintf("%s ", rtype);
webPrintLinkCellEnd();
webPrintLinkCellStart();
hPrintf("%d ", score);
webPrintLinkCellEnd();
webPrintLinkCellStart();
hPrintf("%s:%s-%s",
chrom, chromStart, chromEnd, name, chrom, chromStart, chromEnd);
webPrintLinkCellEnd();
webPrintLinkCellStart();
hPrintf("%s\n", desc);
webPrintLinkCellEnd();
hPrintf("
\n");
}
sqlFreeResult(&sr);
}
struct section *pseudoGeneSection(struct sqlConnection *conn,
struct hash *sectionRa)
/* Create pseudoGene section. */
{
struct section *section = sectionNew(sectionRa, "pseudoGene");
section->exists = pseudoGeneExists;
section->print = pseudoGenePrint;
return section;
}