Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
sha1-name.c: remove the_repo from get_oid_with_context_1()
author
Nguyễn Thái Ngọc Duy
<pclouds@gmail.com>
Tue, 16 Apr 2019 09:33:36 +0000
(16:33 +0700)
committer
Junio C Hamano
<gitster@pobox.com>
Tue, 16 Apr 2019 09:56:53 +0000
(18:56 +0900)
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
sha1-name.c
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
0381f7f
)
diff --git
a/sha1-name.c
b/sha1-name.c
index 6b53ea2eeb7cd62790aaba8c72afa4afe00e23c6..64a50d12919bc4cd27a474fa90899d963e20a830 100644
(file)
--- a/
sha1-name.c
+++ b/
sha1-name.c
@@
-12,6
+12,7
@@
#include "packfile.h"
#include "object-store.h"
#include "repository.h"
#include "packfile.h"
#include "object-store.h"
#include "repository.h"
+#include "submodule.h"
#include "midx.h"
#include "commit-reach.h"
#include "midx.h"
#include "commit-reach.h"
@@
-1797,7
+1798,7
@@
static enum get_oid_result get_oid_with_context_1(struct repository *repo,
oc->path = xstrdup(cp);
if (!repo->index->cache)
oc->path = xstrdup(cp);
if (!repo->index->cache)
- repo_read_index(
the_repository
);
+ repo_read_index(
repo
);
pos = index_name_pos(repo->index, cp, namelen);
if (pos < 0)
pos = -pos - 1;
pos = index_name_pos(repo->index, cp, namelen);
if (pos < 0)
pos = -pos - 1;
@@
-1842,6
+1843,14
@@
static enum get_oid_result get_oid_with_context_1(struct repository *repo,
new_filename = resolve_relative_path(repo, filename);
if (new_filename)
filename = new_filename;
new_filename = resolve_relative_path(repo, filename);
if (new_filename)
filename = new_filename;
+ /*
+ * NEEDSWORK: Eventually get_tree_entry*() should
+ * learn to take struct repository directly and we
+ * would not need to inject submodule odb to the
+ * in-core odb.
+ */
+ if (repo != the_repository)
+ add_to_alternates_memory(repo->objects->odb->path);
if (flags & GET_OID_FOLLOW_SYMLINKS) {
ret = get_tree_entry_follow_symlinks(&tree_oid,
filename, oid, &oc->symlink_path,
if (flags & GET_OID_FOLLOW_SYMLINKS) {
ret = get_tree_entry_follow_symlinks(&tree_oid,
filename, oid, &oc->symlink_path,