chiark / gitweb /
data2safety: detect doubly-used detections
authorIan Jackson <ian@liberator.relativity.greenend.org.uk>
Fri, 31 Dec 2010 18:12:47 +0000 (18:12 +0000)
committerIan Jackson <ian@liberator.relativity.greenend.org.uk>
Fri, 31 Dec 2010 18:12:47 +0000 (18:12 +0000)
layout/data2safety

index c3fedb33a2c76328904d0fb4ecaa5d5224436cb6..e073149ab60ec4014bf5ee0f8b1512aa25dd5834 100755 (executable)
@@ -834,12 +834,13 @@ sub writeout () {
     foreach $seg (@segs) {
        $segr= $segs{$seg};
        o("$delim\n");
+       my $sensesoboob= so_objboob(1, $segr, \$sensenum);
        o(sprintf " { %-7s%d,%d,%2d,%d,%-9s%d,%-10s%-6s,%-7s",
          "\"$seg\",",$segr->{InvBoOb}?1:0,$segr->{Inter}{Invert},
          $segr->{FeatCount}, $segr->{FeatCountFixed},
          ($segr->{FeatCount}||$segr->{FeatCountFixed}) ? "mfi_$seg," : '0,',
          $segr->{Posns}, "spci_$seg,",
-         so_objboob(1, $segr, \$sensenum),
+         $sensesoboob,
          so_boob(1, $segr->{InvBoOb}).',');
        $ourinter= $segr->{Inter};
        if (defined $ourinter->{Seg}) {
@@ -850,6 +851,9 @@ sub writeout () {
        }
        o("}");
        $delim= ',';
+       endmistake("sense $sensesoboob used for both".
+                  " $seg and $sensemap[$sensenum]")
+           if defined $sensemap[$sensenum];
        $sensemap[$sensenum]= $seg;
        $segnum++;
     }