diff --git a/tools/release_checks.pike b/tools/release_checks.pike index 4eaadf12f42d537aa2c2b5aab08f47a01cc4bba6..31d183860ab2c14b28e418c97280440c28d163e4 100644 --- a/tools/release_checks.pike +++ b/tools/release_checks.pike @@ -74,10 +74,16 @@ int test_unbug_year() { } int test_charset_table(string t) { - array names = ({}); - foreach( Stdio.read_file("src/modules/_Charset/"+t)/"\n", string line ) + array names; + foreach( Stdio.read_file("src/modules/_Charset/"+t)/"\n", string line ) { + if( !names ) { + if( has_value(line, "charset_map") ) + names = ({}); + continue; + } if( sscanf(line, " { \"%s\", ", string name) ) names += ({ name }); + } string code = Stdio.read_file("src/modules/_Charset/module.pmod.in"); sscanf(code, "%*sstring normalize(%s return out;\n}", code); @@ -95,6 +101,12 @@ int test_charset_table(string t) { if( !equal(names, sort(copy_value(names))) ) { write("Incorrect sorting order in %s.\n", t); + foreach( sort(copy_value(names)); int i; string name) + if( name != names[i] ) + { + write("Problem beings at %O, should be %O\n", names[i], name); + break; + } status = 0; }