7469d0027b6c5e5ca9b4a98457c8b1b756aa5f2f
jcasper
  Wed Nov 18 09:35:52 2015 -0800
Fix for issue where gsBig failed to merge segments after it had skipped over one containing all Ns, refs #16220

diff --git src/hg/gsBig/gsBig.c src/hg/gsBig/gsBig.c
index d30badc..4db8434 100644
--- src/hg/gsBig/gsBig.c
+++ src/hg/gsBig/gsBig.c
@@ -662,30 +662,34 @@
 	    if (sizeOne > winSize) sizeOne = winSize;
 	    /* Genscan hangs forever if a chunk is all-N's... if so, 
 	     * then skip this chunk. */
 	    for (i=offset;  i < (offset+sizeOne);  i++)
 		{
 		if (seq.dna[i] != 'N' && seq.dna[i] != 'n')
 		    {
 		    allN = FALSE;
 		    break;
 		    }
 		}
 	    if (allN)
 		{
 		printf("\ngsBig: skipping %s[%d:%d] -- it's all N's.\n\n",
 		       seqName, offset, (offset+sizeOne-1));
+    AllocVar(seg);
+    seg->start = offset;
+    seg->end = offset+sizeOne;
+		slAddHead(&segList, seg);
 		}
 	    else
 		{
 		faWrite(tempFa, "split", seq.dna + offset, sizeOne); 
 		dyStringClear(dy);
 		dyStringPrintf(dy, "%s %s %s", exePath, parPath, tempFa);
 		if (suboptName != NULL)
 		    dyStringPrintf(dy, " -subopt");
 		dyStringPrintf(dy, " > %s", tempGs);
 		verbose(3, "%s\n", dy->string);
 		mustSystem(dy->string);
 		seg = parseSegment(tempGs, offset, offset+sizeOne, NULL);
 		slAddHead(&segList, seg);
 		}
 	    chunkNum++;