cc56440c7eaef93003f3599de4ad38310549f209
kate
  Tue Mar 27 14:55:41 2018 -0700
Fix problem found by QA note #22 (thanks Jairo!). refs #21109

diff --git src/hg/hgTracks/interactTrack.c src/hg/hgTracks/interactTrack.c
index 3a8f1b6..26e7769 100644
--- src/hg/hgTracks/interactTrack.c
+++ src/hg/hgTracks/interactTrack.c
@@ -376,30 +376,33 @@
         hvGfxBox(hvg, sX, yOff, 1, 1, MG_WHITE);
         mapBoxHgcOrHgGene(hvg, chromStart, chromEnd, 
                            sX - sWidth, yOff, sWidth * 2, 3,
                            tg->track, itemBuf, nameBuf, NULL, TRUE, NULL);
         }
     if (tOnScreen)
         {
         // add map box to target region
         nameBuf = isEmptyTextField(inter->targetName) ? statusBuf : inter->targetName;
         hvGfxBox(hvg, tX-1, yOff, 3, 1, peakColor);
         hvGfxBox(hvg, tX, yOff, 1, 1, MG_WHITE);
         mapBoxHgcOrHgGene(hvg, chromStart, chromEnd, 
                         tX - tWidth, yOff, tWidth * 2, 3,
                         tg->track, itemBuf, nameBuf, NULL, TRUE, NULL);
         }
+    if (!sOnScreen && !tOnScreen)
+        continue;
+
     // Draw interaction and map boxes
     int lowerX = 0, upperX = 0;
     if (s < t)
         {
         lowerX = sOnScreen ? sX : xOff;
         upperX = tOnScreen ? tX : xOff + width;
         }
     else
         {
         lowerX = tOnScreen ? tX : xOff;
         upperX = sOnScreen ? sX : xOff + width;
         }
     if (draw == DRAW_LINE || !sOnScreen || !tOnScreen)
         {
         // draw horizontal line between region centers at 'peak' height