* [PATCH 0/2] Fixes for the ref-transactions series in origin/pu
@ 2014-06-13 15:51 Ronnie Sahlberg
2014-06-13 15:51 ` [PATCH 1/2] remotes.c: update calls to new signature for repack_without_refs Ronnie Sahlberg
2014-06-13 15:51 ` [PATCH 2/2] receive-pack.c: add missing xstrdup Ronnie Sahlberg
0 siblings, 2 replies; 5+ messages in thread
From: Ronnie Sahlberg @ 2014-06-13 15:51 UTC (permalink / raw)
To: git; +Cc: Ronnie Sahlberg
Jun,
Please find two fixes for the ref-transactions series in origin/pu
Ronnie Sahlberg (2):
remotes.c: update calls to new signature for repack_without_refs
receive-pack.c: add missing xstrdup
builtin/receive-pack.c | 21 +++++++++++----------
builtin/remote.c | 5 +++--
refs.h | 3 ++-
3 files changed, 16 insertions(+), 13 deletions(-)
--
2.0.0.415.g8cd8cf8
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/2] remotes.c: update calls to new signature for repack_without_refs
2014-06-13 15:51 [PATCH 0/2] Fixes for the ref-transactions series in origin/pu Ronnie Sahlberg
@ 2014-06-13 15:51 ` Ronnie Sahlberg
2014-06-13 19:40 ` Junio C Hamano
2014-06-13 15:51 ` [PATCH 2/2] receive-pack.c: add missing xstrdup Ronnie Sahlberg
1 sibling, 1 reply; 5+ messages in thread
From: Ronnie Sahlberg @ 2014-06-13 15:51 UTC (permalink / raw)
To: git; +Cc: Ronnie Sahlberg
This should be merged into patch:
00c74db refs.c: add an err argument to repack_without_refs
Signed-off-by: Ronnie Sahlberg <sahlberg@google.com>
---
builtin/remote.c | 5 +++--
refs.h | 3 ++-
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/builtin/remote.c b/builtin/remote.c
index c9102e8..401feb3 100644
--- a/builtin/remote.c
+++ b/builtin/remote.c
@@ -755,7 +755,7 @@ static int remove_branches(struct string_list *branches)
branch_names = xmalloc(branches->nr * sizeof(*branch_names));
for (i = 0; i < branches->nr; i++)
branch_names[i] = branches->items[i].string;
- result |= repack_without_refs(branch_names, branches->nr);
+ result |= repack_without_refs(branch_names, branches->nr, NULL);
free(branch_names);
for (i = 0; i < branches->nr; i++) {
@@ -1333,7 +1333,8 @@ static int prune_remote(const char *remote, int dry_run)
for (i = 0; i < states.stale.nr; i++)
delete_refs[i] = states.stale.items[i].util;
if (!dry_run)
- result |= repack_without_refs(delete_refs, states.stale.nr);
+ result |= repack_without_refs(delete_refs,
+ states.stale.nr, NULL);
free(delete_refs);
}
diff --git a/refs.h b/refs.h
index 1b236f7..db463d0 100644
--- a/refs.h
+++ b/refs.h
@@ -162,7 +162,8 @@ extern void rollback_packed_refs(void);
*/
int pack_refs(unsigned int flags);
-extern int repack_without_refs(const char **refnames, int n);
+extern int repack_without_refs(const char **refnames, int n,
+ struct strbuf *err);
extern int ref_exists(const char *);
--
2.0.0.415.g8cd8cf8
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/2] receive-pack.c: add missing xstrdup
2014-06-13 15:51 [PATCH 0/2] Fixes for the ref-transactions series in origin/pu Ronnie Sahlberg
2014-06-13 15:51 ` [PATCH 1/2] remotes.c: update calls to new signature for repack_without_refs Ronnie Sahlberg
@ 2014-06-13 15:51 ` Ronnie Sahlberg
1 sibling, 0 replies; 5+ messages in thread
From: Ronnie Sahlberg @ 2014-06-13 15:51 UTC (permalink / raw)
To: git; +Cc: Ronnie Sahlberg
This should be merged into patch :
1685d87 receive-pack.c: use a reference transaction for updating the refs
Signed-off-by: Ronnie Sahlberg <sahlberg@google.com>
---
builtin/receive-pack.c | 21 +++++++++++----------
1 file changed, 11 insertions(+), 10 deletions(-)
diff --git a/builtin/receive-pack.c b/builtin/receive-pack.c
index 2575d06..64d54f8 100644
--- a/builtin/receive-pack.c
+++ b/builtin/receive-pack.c
@@ -479,7 +479,7 @@ static char *update(struct command *cmd, struct shallow_info *si)
/* only refs/... are allowed */
if (!starts_with(name, "refs/") || check_refname_format(name + 5, 0)) {
rp_error("refusing to create funny ref '%s' remotely", name);
- return "funny refname";
+ return xstrdup("funny refname");
}
strbuf_addf(&namespaced_name_buf, "%s%s", get_git_namespace(), name);
@@ -497,20 +497,20 @@ static char *update(struct command *cmd, struct shallow_info *si)
rp_error("refusing to update checked out branch: %s", name);
if (deny_current_branch == DENY_UNCONFIGURED)
refuse_unconfigured_deny();
- return "branch is currently checked out";
+ return xstrdup("branch is currently checked out");
}
}
if (!is_null_sha1(new_sha1) && !has_sha1_file(new_sha1)) {
error("unpack should have generated %s, "
"but I can't find it!", sha1_to_hex(new_sha1));
- return "bad pack";
+ return xstrdup("bad pack");
}
if (!is_null_sha1(old_sha1) && is_null_sha1(new_sha1)) {
if (deny_deletes && starts_with(name, "refs/heads/")) {
rp_error("denying ref deletion for %s", name);
- return "deletion prohibited";
+ return xstrdup("deletion prohibited");
}
if (!strcmp(namespaced_name, head_name)) {
@@ -525,7 +525,8 @@ static char *update(struct command *cmd, struct shallow_info *si)
if (deny_delete_current == DENY_UNCONFIGURED)
refuse_unconfigured_deny_delete_current();
rp_error("refusing to delete the current branch: %s", name);
- return "deletion of the current branch prohibited";
+ return xstrdup("deletion of the current branch "
+ "prohibited");
}
}
}
@@ -543,19 +544,19 @@ static char *update(struct command *cmd, struct shallow_info *si)
old_object->type != OBJ_COMMIT ||
new_object->type != OBJ_COMMIT) {
error("bad sha1 objects for %s", name);
- return "bad ref";
+ return xstrdup("bad ref");
}
old_commit = (struct commit *)old_object;
new_commit = (struct commit *)new_object;
if (!in_merge_bases(old_commit, new_commit)) {
rp_error("denying non-fast-forward %s"
" (you should pull first)", name);
- return "non-fast-forward";
+ return xstrdup("non-fast-forward");
}
}
if (run_update_hook(cmd)) {
rp_error("hook declined to update %s", name);
- return "hook declined";
+ return xstrdup("hook declined");
}
if (is_null_sha1(new_sha1)) {
@@ -570,7 +571,7 @@ static char *update(struct command *cmd, struct shallow_info *si)
}
if (delete_ref(namespaced_name, old_sha1, 0)) {
rp_error("failed to delete %s", name);
- return "failed to delete";
+ return xstrdup("failed to delete");
}
return NULL; /* good */
}
@@ -580,7 +581,7 @@ static char *update(struct command *cmd, struct shallow_info *si)
if (shallow_update && si->shallow_ref[cmd->index] &&
update_shallow_ref(cmd, si))
- return "shallow error";
+ return xstrdup("shallow error");
transaction = ref_transaction_begin(&err);
if (!transaction ||
--
2.0.0.415.g8cd8cf8
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] remotes.c: update calls to new signature for repack_without_refs
2014-06-13 15:51 ` [PATCH 1/2] remotes.c: update calls to new signature for repack_without_refs Ronnie Sahlberg
@ 2014-06-13 19:40 ` Junio C Hamano
2014-06-13 19:47 ` Ronnie Sahlberg
0 siblings, 1 reply; 5+ messages in thread
From: Junio C Hamano @ 2014-06-13 19:40 UTC (permalink / raw)
To: Ronnie Sahlberg; +Cc: git
Ronnie Sahlberg <sahlberg@google.com> writes:
> This should be merged into patch:
> 00c74db refs.c: add an err argument to repack_without_refs
>
> Signed-off-by: Ronnie Sahlberg <sahlberg@google.com>
> ---
> builtin/remote.c | 5 +++--
> refs.h | 3 ++-
> 2 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/builtin/remote.c b/builtin/remote.c
> index c9102e8..401feb3 100644
> --- a/builtin/remote.c
> +++ b/builtin/remote.c
> @@ -755,7 +755,7 @@ static int remove_branches(struct string_list *branches)
> branch_names = xmalloc(branches->nr * sizeof(*branch_names));
> for (i = 0; i < branches->nr; i++)
> branch_names[i] = branches->items[i].string;
> - result |= repack_without_refs(branch_names, branches->nr);
> + result |= repack_without_refs(branch_names, branches->nr, NULL);
> free(branch_names);
>
> for (i = 0; i < branches->nr; i++) {
> @@ -1333,7 +1333,8 @@ static int prune_remote(const char *remote, int dry_run)
> for (i = 0; i < states.stale.nr; i++)
> delete_refs[i] = states.stale.items[i].util;
> if (!dry_run)
> - result |= repack_without_refs(delete_refs, states.stale.nr);
> + result |= repack_without_refs(delete_refs,
> + states.stale.nr, NULL);
> free(delete_refs);
> }
>
> diff --git a/refs.h b/refs.h
> index 1b236f7..db463d0 100644
> --- a/refs.h
> +++ b/refs.h
> @@ -162,7 +162,8 @@ extern void rollback_packed_refs(void);
> */
> int pack_refs(unsigned int flags);
>
> -extern int repack_without_refs(const char **refnames, int n);
> +extern int repack_without_refs(const char **refnames, int n,
> + struct strbuf *err);
>
> extern int ref_exists(const char *);
How does this related to v16? The reason I ask is because even
though v16 0/48 says it is to be applied on 'next' it won't at least
for me X-< and this is one of the early places where the patches
fail to apply without adjustment.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] remotes.c: update calls to new signature for repack_without_refs
2014-06-13 19:40 ` Junio C Hamano
@ 2014-06-13 19:47 ` Ronnie Sahlberg
0 siblings, 0 replies; 5+ messages in thread
From: Ronnie Sahlberg @ 2014-06-13 19:47 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git@vger.kernel.org
It should have been in
[PATCH v16 08/48] refs.c: add an err argument to repack_without_refs
but it is not. It must have gone AWOL during one of the many conflicts.
It should be there nevertheless since we change the signature for this
function in this patch.
On Fri, Jun 13, 2014 at 12:40 PM, Junio C Hamano <gitster@pobox.com> wrote:
> Ronnie Sahlberg <sahlberg@google.com> writes:
>
>> This should be merged into patch:
>> 00c74db refs.c: add an err argument to repack_without_refs
>>
>> Signed-off-by: Ronnie Sahlberg <sahlberg@google.com>
>> ---
>> builtin/remote.c | 5 +++--
>> refs.h | 3 ++-
>> 2 files changed, 5 insertions(+), 3 deletions(-)
>>
>> diff --git a/builtin/remote.c b/builtin/remote.c
>> index c9102e8..401feb3 100644
>> --- a/builtin/remote.c
>> +++ b/builtin/remote.c
>> @@ -755,7 +755,7 @@ static int remove_branches(struct string_list *branches)
>> branch_names = xmalloc(branches->nr * sizeof(*branch_names));
>> for (i = 0; i < branches->nr; i++)
>> branch_names[i] = branches->items[i].string;
>> - result |= repack_without_refs(branch_names, branches->nr);
>> + result |= repack_without_refs(branch_names, branches->nr, NULL);
>> free(branch_names);
>>
>> for (i = 0; i < branches->nr; i++) {
>> @@ -1333,7 +1333,8 @@ static int prune_remote(const char *remote, int dry_run)
>> for (i = 0; i < states.stale.nr; i++)
>> delete_refs[i] = states.stale.items[i].util;
>> if (!dry_run)
>> - result |= repack_without_refs(delete_refs, states.stale.nr);
>> + result |= repack_without_refs(delete_refs,
>> + states.stale.nr, NULL);
>> free(delete_refs);
>> }
>>
>> diff --git a/refs.h b/refs.h
>> index 1b236f7..db463d0 100644
>> --- a/refs.h
>> +++ b/refs.h
>> @@ -162,7 +162,8 @@ extern void rollback_packed_refs(void);
>> */
>> int pack_refs(unsigned int flags);
>>
>> -extern int repack_without_refs(const char **refnames, int n);
>> +extern int repack_without_refs(const char **refnames, int n,
>> + struct strbuf *err);
>>
>> extern int ref_exists(const char *);
>
> How does this related to v16? The reason I ask is because even
> though v16 0/48 says it is to be applied on 'next' it won't at least
> for me X-< and this is one of the early places where the patches
> fail to apply without adjustment.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-06-13 19:47 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-13 15:51 [PATCH 0/2] Fixes for the ref-transactions series in origin/pu Ronnie Sahlberg
2014-06-13 15:51 ` [PATCH 1/2] remotes.c: update calls to new signature for repack_without_refs Ronnie Sahlberg
2014-06-13 19:40 ` Junio C Hamano
2014-06-13 19:47 ` Ronnie Sahlberg
2014-06-13 15:51 ` [PATCH 2/2] receive-pack.c: add missing xstrdup Ronnie Sahlberg
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).