9ab8b9c0cd6f2ff74c3187abce52e39a1309e51a
jcasper
  Wed Aug 13 15:13:12 2025 -0700
MaveDB trackdoc now in it's own file, with minor processing fixes, refs #31812

diff --git src/hg/oneShot/parseMave/parseMave.pl src/hg/oneShot/parseMave/parseMave.pl
index 5d7b92ee676..9a0f288994f 100644
--- src/hg/oneShot/parseMave/parseMave.pl
+++ src/hg/oneShot/parseMave/parseMave.pl
@@ -493,30 +493,32 @@
 }
 
 $outstring .= "$sizeString\t$exonStarts";
 
 # that's the end of the basic bed fields.  Now for the extra heatmap-specific fields
 
 $outstring .= "\t$rowCount\t$rowLabels\t";
 
 # now write out the lower bound, midpoint, and upper bound for the track
 # These should be in ascending order
 
 @justScores = grep (/^[^#]/, @exonScores);  # if all positive or negative, the #color values and "" would screw this up
 $outstring .= join ",", (min(@justScores), (min(@justScores)+max(@justScores))/2, max(@justScores));
 $outstring .= ",\t";
 
+die "Min and max score are both " . min(@justScores) . ".  Likely a parsing error." if (min(@justScores) == max(@justScores));
+
 # now the colors for each block
 
 $outstring .= join ",", ("blue", "silver", "red");
 $outstring .= ",\t";
 
 # now for the cell scores themselves, along with the cell labels
 
 $outstring .= join ",", @exonScores;
 $outstring .= ",\t";
 $outstring .= join ",", @exonLabels;
 $outstring .= ",\t";
 
 $metadata_ref = $$jsonObj{"metadata"};
 $shortDescription = $$metadata_ref{"shortDescription"};
 $shortDescription =~ s/\\u(.{4})/chr(hex($1))/ge;  # thanks to https://www.perlmonks.org/?node_id=796799