From: Christian Couder <chriscool@tuxfamily.org>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org, Avery Pennarun <apenwarr@gmail.com>,
Johannes Schindelin <Johannes.Schindelin@gmx.de>,
Jonathan Nieder <jrnieder@gmail.com>, Jeff King <peff@peff.net>,
Max Horn <max@quendi.de>
Subject: [PATCH 08/86] transport*: replace prefixcmd() with has_prefix()
Date: Sat, 09 Nov 2013 08:06:01 +0100 [thread overview]
Message-ID: <20131109070720.18178.55096.chriscool@tuxfamily.org> (raw)
In-Reply-To: <20131109070358.18178.40248.chriscool@tuxfamily.org>
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
---
transport-helper.c | 16 ++++++++--------
transport.c | 28 ++++++++++++++--------------
2 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/transport-helper.c b/transport-helper.c
index b32e2d6..bf8d7a0 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -190,7 +190,7 @@ static struct child_process *get_helper(struct transport *transport)
data->export = 1;
else if (!strcmp(capname, "check-connectivity"))
data->check_connectivity = 1;
- else if (!data->refspecs && !prefixcmp(capname, "refspec ")) {
+ else if (!data->refspecs && has_prefix(capname, "refspec ")) {
ALLOC_GROW(refspecs,
refspec_nr + 1,
refspec_alloc);
@@ -199,17 +199,17 @@ static struct child_process *get_helper(struct transport *transport)
data->connect = 1;
} else if (!strcmp(capname, "signed-tags")) {
data->signed_tags = 1;
- } else if (!prefixcmp(capname, "export-marks ")) {
+ } else if (has_prefix(capname, "export-marks ")) {
struct strbuf arg = STRBUF_INIT;
strbuf_addstr(&arg, "--export-marks=");
strbuf_addstr(&arg, capname + strlen("export-marks "));
data->export_marks = strbuf_detach(&arg, NULL);
- } else if (!prefixcmp(capname, "import-marks")) {
+ } else if (has_prefix(capname, "import-marks")) {
struct strbuf arg = STRBUF_INIT;
strbuf_addstr(&arg, "--import-marks=");
strbuf_addstr(&arg, capname + strlen("import-marks "));
data->import_marks = strbuf_detach(&arg, NULL);
- } else if (!prefixcmp(capname, "no-private-update")) {
+ } else if (has_prefix(capname, "no-private-update")) {
data->no_private_update = 1;
} else if (mandatory) {
die("Unknown mandatory capability %s. This remote "
@@ -310,7 +310,7 @@ static int set_helper_option(struct transport *transport,
if (!strcmp(buf.buf, "ok"))
ret = 0;
- else if (!prefixcmp(buf.buf, "error")) {
+ else if (has_prefix(buf.buf, "error")) {
ret = -1;
} else if (!strcmp(buf.buf, "unsupported"))
ret = 1;
@@ -374,7 +374,7 @@ static int fetch_with_fetch(struct transport *transport,
while (1) {
recvline(data, &buf);
- if (!prefixcmp(buf.buf, "lock ")) {
+ if (has_prefix(buf.buf, "lock ")) {
const char *name = buf.buf + 5;
if (transport->pack_lockfile)
warning("%s also locked %s", data->name, name);
@@ -645,10 +645,10 @@ static int push_update_ref_status(struct strbuf *buf,
char *refname, *msg;
int status;
- if (!prefixcmp(buf->buf, "ok ")) {
+ if (has_prefix(buf->buf, "ok ")) {
status = REF_STATUS_OK;
refname = buf->buf + 3;
- } else if (!prefixcmp(buf->buf, "error ")) {
+ } else if (has_prefix(buf->buf, "error ")) {
status = REF_STATUS_REMOTE_REJECT;
refname = buf->buf + 6;
} else
diff --git a/transport.c b/transport.c
index 7202b77..24b781c 100644
--- a/transport.c
+++ b/transport.c
@@ -169,13 +169,13 @@ static void set_upstreams(struct transport *transport, struct ref *refs,
remotename = ref->name;
tmp = resolve_ref_unsafe(localname, sha, 1, &flag);
if (tmp && flag & REF_ISSYMREF &&
- !prefixcmp(tmp, "refs/heads/"))
+ has_prefix(tmp, "refs/heads/"))
localname = tmp;
/* Both source and destination must be local branches. */
- if (!localname || prefixcmp(localname, "refs/heads/"))
+ if (!localname || !has_prefix(localname, "refs/heads/"))
continue;
- if (!remotename || prefixcmp(remotename, "refs/heads/"))
+ if (!remotename || !has_prefix(remotename, "refs/heads/"))
continue;
if (!pretend)
@@ -191,7 +191,7 @@ static void set_upstreams(struct transport *transport, struct ref *refs,
static const char *rsync_url(const char *url)
{
- return prefixcmp(url, "rsync://") ? skip_prefix(url, "rsync:") : url;
+ return !has_prefix(url, "rsync://") ? skip_prefix(url, "rsync:") : url;
}
static struct ref *get_refs_via_rsync(struct transport *transport, int for_push)
@@ -296,8 +296,8 @@ static int write_one_ref(const char *name, const unsigned char *sha1,
FILE *f;
/* when called via for_each_ref(), flags is non-zero */
- if (flags && prefixcmp(name, "refs/heads/") &&
- prefixcmp(name, "refs/tags/"))
+ if (flags && !has_prefix(name, "refs/heads/") &&
+ !has_prefix(name, "refs/tags/"))
return 0;
strbuf_addstr(buf, name);
@@ -652,7 +652,7 @@ static void print_ok_ref_status(struct ref *ref, int porcelain)
print_ref_status('-', "[deleted]", ref, NULL, NULL, porcelain);
else if (is_null_sha1(ref->old_sha1))
print_ref_status('*',
- (!prefixcmp(ref->name, "refs/tags/") ? "[new tag]" :
+ (has_prefix(ref->name, "refs/tags/") ? "[new tag]" :
"[new branch]"),
ref, ref->peer_ref, NULL, porcelain);
else {
@@ -930,13 +930,13 @@ struct transport *transport_get(struct remote *remote, const char *url)
while (is_urlschemechar(p == url, *p))
p++;
- if (!prefixcmp(p, "::"))
+ if (has_prefix(p, "::"))
helper = xstrndup(url, p - url);
}
if (helper) {
transport_helper_init(ret, helper);
- } else if (!prefixcmp(url, "rsync:")) {
+ } else if (has_prefix(url, "rsync:")) {
ret->get_refs_list = get_refs_via_rsync;
ret->fetch = fetch_objs_via_rsync;
ret->push = rsync_transport_push;
@@ -949,11 +949,11 @@ struct transport *transport_get(struct remote *remote, const char *url)
ret->disconnect = close_bundle;
ret->smart_options = NULL;
} else if (!is_url(url)
- || !prefixcmp(url, "file://")
- || !prefixcmp(url, "git://")
- || !prefixcmp(url, "ssh://")
- || !prefixcmp(url, "git+ssh://")
- || !prefixcmp(url, "ssh+git://")) {
+ || has_prefix(url, "file://")
+ || has_prefix(url, "git://")
+ || has_prefix(url, "ssh://")
+ || has_prefix(url, "git+ssh://")
+ || has_prefix(url, "ssh+git://")) {
/* These are builtin smart transports. */
struct git_transport_data *data = xcalloc(1, sizeof(*data));
ret->data = data;
--
1.8.4.1.566.geca833c
next prev parent reply other threads:[~2013-11-09 7:11 UTC|newest]
Thread overview: 100+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-09 7:05 [PATCH 00/86] replace prefixcmp() with has_prefix() Christian Couder
2013-11-09 7:05 ` [PATCH 01/86] strbuf: add has_prefix() to be used instead of prefixcmp() Christian Couder
2013-11-09 7:05 ` [PATCH 02/86] diff: replace prefixcmd() with has_prefix() Christian Couder
2013-11-09 7:05 ` [PATCH 03/86] fast-import: " Christian Couder
2013-11-09 7:05 ` [PATCH 04/86] remote*: " Christian Couder
2013-11-09 7:05 ` [PATCH 05/86] daemon: " Christian Couder
2013-11-09 7:05 ` [PATCH 06/86] pretty: " Christian Couder
2013-11-09 7:06 ` [PATCH 07/86] revision: " Christian Couder
2013-11-09 7:06 ` Christian Couder [this message]
2013-11-09 7:06 ` [PATCH 09/86] config: " Christian Couder
2013-11-09 7:06 ` [PATCH 10/86] sha1_name: " Christian Couder
2013-11-09 7:06 ` [PATCH 11/86] wt-status: " Christian Couder
2013-11-09 7:06 ` [PATCH 12/86] upload-pack: " Christian Couder
2013-11-09 7:06 ` [PATCH 13/86] test-line-buffer: " Christian Couder
2013-11-09 7:06 ` [PATCH 14/86] parse-options: " Christian Couder
2013-11-09 7:06 ` [PATCH 15/86] fetch-pack: " Christian Couder
2013-11-09 7:06 ` [PATCH 16/86] git: " Christian Couder
2013-11-09 7:06 ` [PATCH 17/86] tag: " Christian Couder
2013-11-09 7:06 ` [PATCH 18/86] sequencer: " Christian Couder
2013-11-09 7:06 ` [PATCH 19/86] commit: " Christian Couder
2013-11-09 7:06 ` [PATCH 20/86] http: " Christian Couder
2013-11-09 7:06 ` [PATCH 21/86] imap-send: " Christian Couder
2013-11-09 7:06 ` [PATCH 22/86] help: " Christian Couder
2013-11-09 7:06 ` [PATCH 23/86] log-tree: " Christian Couder
2013-11-09 7:06 ` [PATCH 24/86] merge-recursive: " Christian Couder
2013-11-09 7:06 ` [PATCH 25/86] notes: " Christian Couder
2013-11-09 7:06 ` [PATCH 26/86] refs: " Christian Couder
2013-11-09 7:06 ` [PATCH 27/86] setup: " Christian Couder
2013-11-09 7:06 ` [PATCH 28/86] bisect: " Christian Couder
2013-11-09 7:06 ` [PATCH 29/86] branch: " Christian Couder
2013-11-09 7:06 ` [PATCH 30/86] http-push: " Christian Couder
2013-11-09 7:06 ` [PATCH 31/86] send-pack: " Christian Couder
2013-11-09 7:06 ` [PATCH 32/86] http-backend: " Christian Couder
2013-11-09 7:06 ` [PATCH 33/86] notes-utils: " Christian Couder
2013-11-09 7:06 ` [PATCH 34/86] pkt-line: " Christian Couder
2013-11-09 7:06 ` [PATCH 35/86] alias: " Christian Couder
2013-11-09 7:06 ` [PATCH 36/86] attr: " Christian Couder
2013-11-09 7:06 ` [PATCH 37/86] connect: " Christian Couder
2013-11-09 7:06 ` [PATCH 38/86] pager: " Christian Couder
2013-11-09 7:06 ` [PATCH 39/86] convert: " Christian Couder
2013-11-09 7:06 ` [PATCH 40/86] environment: " Christian Couder
2013-11-09 7:06 ` [PATCH 41/86] shell: " Christian Couder
2013-11-09 7:06 ` [PATCH 42/86] pathspec: " Christian Couder
2013-11-09 7:06 ` [PATCH 43/86] submodule: " Christian Couder
2013-11-09 7:06 ` [PATCH 44/86] test-string-list: " Christian Couder
2013-11-09 7:06 ` [PATCH 45/86] builtin/apply: " Christian Couder
2013-11-09 7:06 ` [PATCH 46/86] builtin/archive: " Christian Couder
2013-11-09 7:06 ` [PATCH 47/86] builtin/branch: " Christian Couder
2013-11-09 7:06 ` [PATCH 48/86] builtin/checkout: " Christian Couder
2013-11-09 7:06 ` [PATCH 49/86] builtin/clean: " Christian Couder
2013-11-09 7:06 ` [PATCH 50/86] builtin/clone: " Christian Couder
2013-11-09 7:06 ` [PATCH 51/86] builtin/column: " Christian Couder
2013-11-09 7:06 ` [PATCH 52/86] builtin/commit: " Christian Couder
2013-11-09 7:06 ` [PATCH 53/86] builtin/describe: " Christian Couder
2013-11-09 7:06 ` [PATCH 54/86] builtin/fast-export: " Christian Couder
2013-11-09 7:06 ` [PATCH 55/86] builtin/fetch-pack: " Christian Couder
2013-11-09 7:06 ` [PATCH 56/86] builtin/fetch: " Christian Couder
2013-11-09 7:06 ` [PATCH 57/86] builtin/fmt-merge-msg: " Christian Couder
2013-11-09 7:06 ` [PATCH 58/86] builtin/for-each-ref: " Christian Couder
2013-11-09 7:06 ` [PATCH 59/86] builtin/fsck: " Christian Couder
2013-11-09 7:06 ` [PATCH 60/86] builtin/help: " Christian Couder
2013-11-09 7:06 ` [PATCH 61/86] builtin/index-pack: " Christian Couder
2013-11-09 7:06 ` [PATCH 62/86] builtin/init-db: " Christian Couder
2013-11-09 7:06 ` [PATCH 63/86] builtin/log: " Christian Couder
2013-11-09 7:06 ` [PATCH 64/86] builtin/ls-remote: " Christian Couder
2013-11-09 7:06 ` [PATCH 65/86] builtin/mailinfo: " Christian Couder
2013-11-09 7:06 ` [PATCH 66/86] builtin/merge-recursive: " Christian Couder
2013-11-09 7:07 ` [PATCH 67/86] builtin/merge: " Christian Couder
2013-11-09 7:07 ` [PATCH 68/86] builtin/name-rev: " Christian Couder
2013-11-09 7:07 ` [PATCH 69/86] builtin/notes: " Christian Couder
2013-11-09 7:07 ` [PATCH 70/86] builtin/pack-objects: " Christian Couder
2013-11-09 7:07 ` [PATCH 71/86] builtin/prune: " Christian Couder
2013-11-09 7:07 ` [PATCH 72/86] builtin/receive-pack: " Christian Couder
2013-11-09 7:07 ` [PATCH 73/86] builtin/reflog: " Christian Couder
2013-11-09 7:07 ` [PATCH 74/86] builtin/remote: " Christian Couder
2013-11-09 7:07 ` [PATCH 75/86] builtin/rev-parse: " Christian Couder
2013-11-09 7:07 ` [PATCH 76/86] builtin/send-pack: " Christian Couder
2013-11-09 7:07 ` [PATCH 77/86] builtin/shortlog: " Christian Couder
2013-11-09 7:07 ` [PATCH 78/86] builtin/show-branch: " Christian Couder
2013-11-09 7:07 ` [PATCH 79/86] builtin/show-ref: " Christian Couder
2013-11-09 7:07 ` [PATCH 80/86] builtin/symbolic-ref: " Christian Couder
2013-11-09 7:07 ` [PATCH 81/86] builtin/tag: " Christian Couder
2013-11-09 7:07 ` [PATCH 82/86] builtin/tar-tree: " Christian Couder
2013-11-09 7:07 ` [PATCH 83/86] builtin/unpack-objects: " Christian Couder
2013-11-09 7:07 ` [PATCH 84/86] builtin/update-ref: " Christian Couder
2013-11-09 7:07 ` [PATCH 85/86] builtin/upload-archive: " Christian Couder
2013-11-09 7:07 ` [PATCH 86/86] strbuf: remove prefixcmp() as it has been replaced " Christian Couder
2013-11-09 14:24 ` [PATCH 00/86] replace prefixcmp() " Thomas Rast
2013-11-12 6:16 ` Christian Couder
2013-11-11 16:09 ` Andreas Ericsson
2013-11-12 8:32 ` Jeff King
2013-11-12 16:53 ` Junio C Hamano
2013-11-12 20:14 ` Jeff King
2013-11-12 20:43 ` Christian Couder
2013-11-12 21:26 ` Junio C Hamano
2013-11-13 6:47 ` Christian Couder
2013-11-13 7:17 ` Jeff King
2013-11-17 8:52 ` Christian Couder
2013-11-18 10:42 ` Christian Couder
2013-11-19 21:42 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20131109070720.18178.55096.chriscool@tuxfamily.org \
--to=chriscool@tuxfamily.org \
--cc=Johannes.Schindelin@gmx.de \
--cc=apenwarr@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jrnieder@gmail.com \
--cc=max@quendi.de \
--cc=peff@peff.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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 NNTP newsgroup(s).