435e07e7e69e0e945f73781e5128a8cf86d66fff
braney
  Fri Apr 25 08:57:25 2014 -0700
fix up some compiler warnings
diff --git src/hg/hgTracks/wigTrack.c src/hg/hgTracks/wigTrack.c
index a843e84..169196b 100644
--- src/hg/hgTracks/wigTrack.c
+++ src/hg/hgTracks/wigTrack.c
@@ -653,93 +653,93 @@
 		preDraw[winMiddle].smooth = sum / points;
 	++winEnd;
 	++winMiddle;
 	}
     }
 }
 
 double preDrawAutoScale(struct preDrawElement *preDraw, int preDrawZero,
     int width, enum wiggleScaleOptEnum autoScale,
     enum wiggleWindowingEnum windowingFunction,
     double *graphUpperLimit, double *graphLowerLimit,
     double *epsilon, int lineHeight,
     double maxY, double minY, enum wiggleAlwaysZeroEnum alwaysZero)
 /*	if autoScaling, scan preDraw array and determine limits */
 {
-double graphRange;
-double overallUpperLimit, overallLowerLimit, overallRange;
-
 if (autoScale == wiggleScaleAuto)
     {
+    double overallUpperLimit = wigEncodeStartingUpperLimit;
+    double overallLowerLimit = wigEncodeStartingLowerLimit;
     int i, lastI = preDrawZero+width;
 
     /* reset limits for auto scale */
     for (i = preDrawZero; i < lastI; ++i)
 	{
 	/*	count is non-zero meaning valid data exists here	*/
 	if (preDraw[i].count)
 	    {
 	    double val =  preDraw[i].smooth;
 	    if (windowingFunction ==  wiggleWindowingWhiskers)
 		val =  preDraw[i].max;
 	    if (val > overallUpperLimit)
 		overallUpperLimit = val;
-	    val =  preDraw[i].smooth;
+
 	    if (windowingFunction ==  wiggleWindowingWhiskers)
 		val =  preDraw[i].min;
 	    if (val < overallLowerLimit)
 		overallLowerLimit = val;
 	    }
 	}
     if (alwaysZero == wiggleAlwaysZeroOn)
 	{
 	if ( overallUpperLimit < 0)
 	    overallUpperLimit = 0.0;
 	else if ( overallLowerLimit > 0)
 	    overallLowerLimit = 0.0;
 	}
-    overallRange = overallUpperLimit - overallLowerLimit;
+    double overallRange = overallUpperLimit - overallLowerLimit;
     if (overallRange == 0.0)
 	{
 	if (overallUpperLimit > 0.0)
             {
             *graphUpperLimit = overallUpperLimit;
             *graphLowerLimit = 0.0;
             } 
         else if (overallUpperLimit < 0.0) 
             {
             *graphUpperLimit = 0.0;
             *graphLowerLimit = overallUpperLimit;
             } 
         else 
             {
             *graphUpperLimit = 1.0;
             *graphLowerLimit = -1.0;
             }
         } 
     else 
         {
         *graphUpperLimit = overallUpperLimit;
         *graphLowerLimit = overallLowerLimit;
         }
     } 
 else 
     {
     *graphUpperLimit = maxY;
     *graphLowerLimit = minY;
     }
-graphRange = *graphUpperLimit - *graphLowerLimit;
+
+double graphRange = *graphUpperLimit - *graphLowerLimit;
 *epsilon = graphRange / lineHeight;
 return(graphRange);
 }
 
 static Color * makeColorArray(struct preDrawElement *preDraw, int width,
     int preDrawZero, struct wigCartOptions *wigCart, struct track *tg, struct hvGfx *hvg)
 /*	allocate and fill in a coloring array based on another track */
 {
 char *colorTrack = wigCart->colorTrack;
 int x1;
 Color *colorArray = NULL;       /*      Array of pixels to be drawn.    */
 
 /*      Set up the color by array. Determine color of each pixel
  *      based initially on the sign of the data point. If a colorTrack
  *      is specified also fill in the color array with that.