3904cbc6353d7d6d09d7615bfddf7449456588f5
kent
  Tue Apr 19 16:54:41 2011 -0700
Making autoscale work as you'd hope for multiWigs - where all the wigs have a common scale.
diff --git src/hg/hgTracks/bamTrack.c src/hg/hgTracks/bamTrack.c
index 35ececa..2e95eee 100644
--- src/hg/hgTracks/bamTrack.c
+++ src/hg/hgTracks/bamTrack.c
@@ -878,31 +878,31 @@
 	    errAbort("countBam: unrecognized CIGAR op %c -- update me", op);
 	}
 
     }
 return 0;
 }
 
 static void bamWigDrawItems(struct track *tg, int seqStart, int seqEnd,
 	struct hvGfx *hvg, int xOff, int yOff, int width,
 	MgFont *font, Color color, enum trackVisibility vis)
 {
 /* Allocate predraw area. */
 struct bamWigTrackData *bwData;
 double scale = (double)width/(winEnd - winStart);
 
-struct preDrawContainer *pre = initPreDrawContainer(width);
+struct preDrawContainer *pre = tg->preDrawContainer = initPreDrawContainer(width);
 AllocVar(bwData);
 bwData->preDraw = pre->preDraw;
 bwData->scale = scale;
 bwData->width = width;
 bwData->preDrawZero = pre->preDrawZero;
 
 char posForBam[512];
 safef(posForBam, sizeof(posForBam), "%s:%d-%d", chromName, winStart, winEnd);
 
 char *fileName = tg->customPt;
 tg->customPt = NULL;
 
 bamFetch(fileName, posForBam, countBam, bwData, NULL);
 
 /* fill in rest of predraw */