f971af8a285bc4bffe5a80f1f545d807a8cfaca7 angie Mon Sep 30 12:04:44 2013 -0700 In annoStreamerSetRegion, if we're given (chrom, 0, 0), treat that as(chrom, 0, chromSize). diff --git src/lib/annoStreamer.c src/lib/annoStreamer.c index 04eda7a..6f01c01 100644 --- src/lib/annoStreamer.c +++ src/lib/annoStreamer.c @@ -24,30 +24,32 @@ /* Set genomic region for query; if chrom is NULL, position is genome. * Many subclasses should make their own setRegion method that calls this and * configures their data connection to change to the new position. */ { freez(&(self->chrom)); if (chrom == NULL) { self->positionIsGenome = TRUE; self->regionStart = self->regionEnd = 0; } else { self->positionIsGenome = FALSE; self->chrom = cloneString(chrom); self->regionStart = rStart; + if (rEnd == 0) + rEnd = annoAssemblySeqSize(self->assembly, chrom); self->regionEnd = rEnd; } } static char *annoStreamerGetHeader(struct annoStreamer *self) /* Default method: return NULL. */ { return NULL; } struct annoFilter *annoStreamerGetFilters(struct annoStreamer *self) /* Return supported filters with current settings. Callers can modify and free when done. */ { return annoFilterCloneList(self->filters); }