aab2d99a685cdf228873d86290ffee434361aedc
kent
  Wed Sep 4 12:59:24 2019 -0700
Freen explores sqlEscapeString.

diff --git src/hg/oneShot/freen/freen.c src/hg/oneShot/freen/freen.c
index e7e8727..ae8f201 100644
--- src/hg/oneShot/freen/freen.c
+++ src/hg/oneShot/freen/freen.c
@@ -17,33 +17,35 @@
 #include "tokenizer.h"
 #include "strex.h"
 #include "hmac.h"
 
 /* Command line validation table. */
 static struct optionSpec options[] = {
    {NULL, 0},
 };
 
 void usage()
 {
 errAbort("freen - test some hairbrained thing.\n"
          "usage:  freen input\n");
 }
 
-void freen(char *s, char *oldVal, char *newVal)
+void freen(char *s)
 /* Test something */
 {
-char *sub = replaceChars(s, oldVal, newVal);
-printf("%s\n", sub);
+uglyf("%s: %s\n", s, sqlEscapeString(s));
 }
 
 
 int main(int argc, char *argv[])
 /* Process command line. */
 {
 optionInit(&argc, argv, options);
-if (argc != 4)
+if (argc != 2)
     usage();
-freen(argv[1], argv[2], argv[3]);
+freen("\"This is, comma in quoted\"");
+freen("This is a \" quote in the middle");
+freen("0");
+freen("Now, and, then");
 return 0;
 }