chiark / gitweb /
Detect a few more inconsistencies
authorIan Jackson <ian@liberator.relativity.greenend.org.uk>
Tue, 28 Jul 2009 17:07:03 +0000 (18:07 +0100)
committerIan Jackson <ian@liberator.relativity.greenend.org.uk>
Tue, 28 Jul 2009 17:07:03 +0000 (18:07 +0100)
pctb/Commods.pm

index b348c17..183eb96 100644 (file)
@@ -292,6 +292,14 @@ sub check_tsv_line ($$) {
        $f =~ m/^(|0|[1-9][0-9]{0,5}|\>1000)$/ or &$bad_data("bad field $i");
        ($i % 2) or ($f !~ m/\>/) or &$bad_data("> in field $i price");
     }
+
+    foreach my $i (2,4) {
+       &$bad_data("price with no qty or vice versa (field $i)")
+           if length($v[$i]) xor length($v[$i+1]);
+    }
+    length($v[2]) or length($v[4]) or
+       &$bad_data("commodity entry with no buy or sell offer");
+    
     return @v;
 }