int i;
        int errs = 0;
 
-       if (!it)
-               return;
-       if (!ref)
-               die("internal error");
+       if (!it || !ref)
+               /* missing in either */
+               return 0;
 
        if (it->entry_count < 0) {
                dump_one(it, pfx, "");
        }
        else {
                dump_one(it, pfx, "");
-               if (memcmp(it->sha1, ref->sha1, 20) ||
+               if (hashcmp(it->sha1, ref->sha1) ||
                    ref->entry_count != it->entry_count ||
                    ref->subtree_nr != it->subtree_nr) {
                        dump_one(ref, pfx, "#(ref) ");