author Ted Mielczarek <>
Tue, 29 Sep 2009 08:31:50 -0400
changeset 33292 5642cd4a7e88fdc016fcd95248cc6109b60be1f8
child 98529 f4157e8c410708d76703f19e4dfb61859bfe32d8
permissions -rw-r--r--
bug 518641 - fix the "unify" script to properly handle Java .class files. r=bsmedberg Java .class files and Mach-O fat binaries use the same 4-byte magic number at the start of the file. 'unify' uses the magic number to detect Mach-O binaries, so it chokes on Java .class files. This change makes us use the same heuristic as file(1), which is to check the second 4 bytes in the file. Java class files put a version number there, and Mach-O fat binaries put the number of contained architectures there. Conveniently, Mach defines only 18 architectures, and Java's lowest shipping version number is 43, so there's no overlap in valid values.

int main(int argc, char** argv)
  return 0;