080a160c7b9595d516c9c70e83689a09b60839d0 galt Mon Jun 3 12:16:53 2013 -0700 fix SQL Injection diff --git src/hg/lib/trackDb.c src/hg/lib/trackDb.c index 0108a6f..a94c532 100644 --- src/hg/lib/trackDb.c +++ src/hg/lib/trackDb.c @@ -60,31 +60,31 @@ slReverse(&list); return list; } struct trackDb *trackDbLoadWhere(struct sqlConnection *conn, char *table, char *where) /* Load all trackDb from table that satisfy where clause. The * where clause may be NULL in which case whole table is loaded * Dispose of this with trackDbFreeList(). */ { struct trackDb *list = NULL, *el; struct dyString *query = dyStringNew(256); struct sqlResult *sr; char **row; -dyStringPrintf(query, "select * from %s", table); +sqlDyStringPrintf(query, "select * from %s", table); if (where != NULL) dyStringPrintf(query, " where %s", where); sr = sqlGetResult(conn, query->string); while ((row = sqlNextRow(sr)) != NULL) { el = trackDbLoad(row); slAddHead(&list, el); } slReverse(&list); sqlFreeResult(&sr); dyStringFree(&query); return list; } struct trackDb *trackDbLoadAllByChar(char *fileName, char chopper)