if (S_ISGITLINK(entry.mode))
                        continue;
                if (S_ISDIR(entry.mode)) {
-                       struct tree *tree = lookup_tree(entry.oid->hash);
+                       struct tree *tree = lookup_tree(entry.oid);
                        if (tree)
                                obj = &tree->object;
                }
                        }
                }
                if (!obj->type)
-                       parse_object(obj->oid.hash);
+                       parse_object(&obj->oid);
                if (process_object(walker, obj))
                        return -1;
        }