Commit Diff


commit - df3ed485f4148d31d1b555abb99fcba42c1a49b7
commit + 9dbd8627b9a09ee8f2bf24e6d6a7809f18bb6dbb
blob - 241ea3c3ccac1133d50d95329813ab14c3d00f3d
blob + 16b8d2d529e9ab5b19b529a8d06b9f77dc22c9b1
--- lib/object_parse.c
+++ lib/object_parse.c
@@ -338,8 +338,14 @@ parse_commit_time(time_t *time, time_t *gmtoff, char *
 		return got_error_from_errno("strdup");
 	err = parse_gmtoff(gmtoff, tzstr);
 	free(tzstr);
-	if (err)
-		return err;
+	if (err) { 
+		if (err->code != GOT_ERR_BAD_OBJ_DATA)
+			return err;
+		/* Old versions of Git omitted the timestamp. */
+		*time = 0;
+		*gmtoff = 0;
+		return NULL;
+	}
 	*space = '\0';
 
 	/* Timestamp is separated from committer name + email by space. */