From tobiasdreher at outlook.com Sun May 4 21:29:06 2014 From: tobiasdreher at outlook.com (Tobias Dreher) Date: Sun, 4 May 2014 21:29:06 +0200 Subject: [PATCH 1/1] Display repository urls even if repository is empty In-Reply-To: References: Message-ID: If I may ask: Could the patch be merged with master? I used my patch without a hitch here for the last weeks and as I said, it doesn't bring any changes for non-empty repositories. On 2014-04-19 18:05, Tobias Dreher wrote: > Hello everyone, > > Currently cgit only outputs the line "Repository seems to be empty" if a > repository is empty. However, this is often the case when you just > created a bare new repository, and want to make your first commit, and > for that you want to know the URL of your repository! This patch adds > that output. > > > > cgit.c | 5 +++-- > ui-summary.c | 20 ++++++++++++++++---- > ui-summary.h | 1 + > 3 files changed, 20 insertions(+), 6 deletions(-) > > diff --git a/cgit.c b/cgit.c > index f488ebf..93a77a1 100644 > --- a/cgit.c > +++ b/cgit.c > @@ -574,12 +574,15 @@ static int prepare_repo_cmd(void) > ctx.qry.nohead = 1; > ctx.qry.head = find_default_branch(ctx.repo); > } > + sort_string_list(&ctx.repo->submodules); > + cgit_prepare_repo_env(ctx.repo); > > if (!ctx.qry.head) { > cgit_print_http_headers(); > cgit_print_docstart(); > cgit_print_pageheader(); > cgit_print_error("Repository seems to be empty"); > + cgit_print_repository_urls_as_table(); > cgit_print_docend(); > return 1; > } > @@ -597,8 +600,6 @@ static int prepare_repo_cmd(void) > free(tmp); > return 1; > } > - sort_string_list(&ctx.repo->submodules); > - cgit_prepare_repo_env(ctx.repo); > choose_readme(ctx.repo); > return 0; > } > diff --git a/ui-summary.c b/ui-summary.c > index df99ce1..c55ad62 100644 > --- a/ui-summary.c > +++ b/ui-summary.c > @@ -70,6 +70,21 @@ static void print_urls(char *txt, char *suffix) > } > } > > +void cgit_print_repository_urls() > +{ > + if (ctx.repo->clone_url) > + print_urls(expand_macros(ctx.repo->clone_url), NULL); > + else if (ctx.cfg.clone_prefix) > + print_urls(ctx.cfg.clone_prefix, ctx.repo->url); > +} > + > +void cgit_print_repository_urls_as_table() > +{ > + html(""); > + cgit_print_repository_urls(); > + html("
"); > +} > + > void cgit_print_summary() > { > int columns = 3; > @@ -88,10 +103,7 @@ void cgit_print_summary() > cgit_print_log(ctx.qry.head, 0, ctx.cfg.summary_log, NULL, > NULL, NULL, 0, 0, 0); > } > - if (ctx.repo->clone_url) > - print_urls(expand_macros(ctx.repo->clone_url), NULL); > - else if (ctx.cfg.clone_prefix) > - print_urls(ctx.cfg.clone_prefix, ctx.repo->url); > + cgit_print_repository_urls(); > html(""); > } > > diff --git a/ui-summary.h b/ui-summary.h > index c01f560..1dd7e9e 100644 > --- a/ui-summary.h > +++ b/ui-summary.h > @@ -1,6 +1,7 @@ > #ifndef UI_SUMMARY_H > #define UI_SUMMARY_H > > +extern void cgit_print_repository_urls_as_table(); > extern void cgit_print_summary(); > extern void cgit_print_repo_readme(char *path); > _______________________________________________ > CGit mailing list > CGit at lists.zx2c4.com > http://lists.zx2c4.com/mailman/listinfo/cgit From mail at eworm.de Sun May 4 21:31:39 2014 From: mail at eworm.de (Christian Hesse) Date: Sun, 4 May 2014 21:31:39 +0200 Subject: [PATCH 1/1] git: update for git 2.0 Message-ID: <1399231899-16189-1-git-send-email-mail@eworm.de> prefixcmp() and suffixcmp() have been remove, functionality is now provided by starts_with() and ends_with(). Retrurn values have been changed, so instead of just renaming we have to fix logic. Everything else looks just fine. --- Makefile | 4 ++-- cgit.c | 26 +++++++++++++------------- git | 2 +- parsing.c | 12 ++++++------ scan-tree.c | 10 +++++++--- ui-clone.c | 2 +- ui-log.c | 8 ++++---- ui-refs.c | 6 +++--- ui-repolist.c | 2 +- ui-shared.c | 2 +- ui-snapshot.c | 4 ++-- ui-summary.c | 2 +- 12 files changed, 42 insertions(+), 38 deletions(-) diff --git a/Makefile b/Makefile index e6ec0dc..7a61301 100644 --- a/Makefile +++ b/Makefile @@ -14,8 +14,8 @@ htmldir = $(docdir) pdfdir = $(docdir) mandir = $(prefix)/share/man SHA1_HEADER = -GIT_VER = 1.9.2 -GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.gz +GIT_VER = 2.0.0.rc2 +GIT_URL = https://www.kernel.org/pub/software/scm/git/testing/git-$(GIT_VER).tar.gz INSTALL = install COPYTREE = cp -r MAN5_TXT = $(wildcard *.5.txt) diff --git a/cgit.c b/cgit.c index f488ebf..20f6e27 100644 --- a/cgit.c +++ b/cgit.c @@ -69,7 +69,7 @@ static void repo_config(struct cgit_repo *repo, const char *name, const char *va repo->max_stats = cgit_find_stats_period(value, NULL); else if (!strcmp(name, "module-link")) repo->module_link= xstrdup(value); - else if (!prefixcmp(name, "module-link.")) { + else if (starts_with(name, "module-link.")) { item = string_list_append(&repo->submodules, xstrdup(name + 12)); item->util = xstrdup(value); } else if (!strcmp(name, "section")) @@ -102,7 +102,7 @@ static void config_cb(const char *name, const char *value) ctx.repo = cgit_add_repo(value); else if (ctx.repo && !strcmp(name, "repo.path")) ctx.repo->path = trim_end(value, '/'); - else if (ctx.repo && !prefixcmp(name, "repo.")) + else if (ctx.repo && starts_with(name, "repo.")) repo_config(ctx.repo, name + 5, value); else if (!strcmp(name, "readme") && value != NULL) string_list_append(&ctx.cfg.readme, xstrdup(value)); @@ -264,7 +264,7 @@ static void config_cb(const char *name, const char *value) ctx.cfg.branch_sort = 1; if (!strcmp(value, "name")) ctx.cfg.branch_sort = 0; - } else if (!prefixcmp(name, "mimetype.")) + } else if (starts_with(name, "mimetype.")) add_mimetype(name + 9, value); else if (!strcmp(name, "include")) parse_configfile(expand_macros(value), config_cb); @@ -454,7 +454,7 @@ static char *guess_defbranch(void) unsigned char sha1[20]; ref = resolve_ref_unsafe("HEAD", sha1, 0, NULL); - if (!ref || prefixcmp(ref, "refs/heads/")) + if (!ref || !starts_with(ref, "refs/heads/")) return "master"; return xstrdup(ref + 11); } @@ -941,28 +941,28 @@ static void cgit_parse_args(int argc, const char **argv) exit(0); } - if (!prefixcmp(argv[i], "--cache=")) { + if (starts_with(argv[i], "--cache=")) { ctx.cfg.cache_root = xstrdup(argv[i] + 8); } else if (!strcmp(argv[i], "--nocache")) { ctx.cfg.nocache = 1; } else if (!strcmp(argv[i], "--nohttp")) { ctx.env.no_http = "1"; - } else if (!prefixcmp(argv[i], "--query=")) { + } else if (starts_with(argv[i], "--query=")) { ctx.qry.raw = xstrdup(argv[i] + 8); - } else if (!prefixcmp(argv[i], "--repo=")) { + } else if (starts_with(argv[i], "--repo=")) { ctx.qry.repo = xstrdup(argv[i] + 7); - } else if (!prefixcmp(argv[i], "--page=")) { + } else if (starts_with(argv[i], "--page=")) { ctx.qry.page = xstrdup(argv[i] + 7); - } else if (!prefixcmp(argv[i], "--head=")) { + } else if (starts_with(argv[i], "--head=")) { ctx.qry.head = xstrdup(argv[i] + 7); ctx.qry.has_symref = 1; - } else if (!prefixcmp(argv[i], "--sha1=")) { + } else if (starts_with(argv[i], "--sha1=")) { ctx.qry.sha1 = xstrdup(argv[i] + 7); ctx.qry.has_sha1 = 1; - } else if (!prefixcmp(argv[i], "--ofs=")) { + } else if (starts_with(argv[i], "--ofs=")) { ctx.qry.ofs = atoi(argv[i] + 6); - } else if (!prefixcmp(argv[i], "--scan-tree=") || - !prefixcmp(argv[i], "--scan-path=")) { + } else if (starts_with(argv[i], "--scan-tree=") || + starts_with(argv[i], "--scan-path=")) { /* * HACK: The global snapshot bit mask defines the set * of allowed snapshot formats, but the config file diff --git a/git b/git index 0bc85ab..b4f86a4 160000 --- a/git +++ b/git @@ -1 +1 @@ -Subproject commit 0bc85abb7aa9b24b093253018801a0fb43d01122 +Subproject commit b4f86a4ce85e4e370a67455de6586a02f158a789 diff --git a/parsing.c b/parsing.c index 5b4b1f4..073f46f 100644 --- a/parsing.c +++ b/parsing.c @@ -147,25 +147,25 @@ struct commitinfo *cgit_parse_commit(struct commit *commit) if (p == NULL) return ret; - if (prefixcmp(p, "tree ")) + if (!starts_with(p, "tree ")) die("Bad commit: %s", sha1_to_hex(commit->object.sha1)); else p += 46; // "tree " + hex[40] + "\n" - while (!prefixcmp(p, "parent ")) + while (starts_with(p, "parent ")) p += 48; // "parent " + hex[40] + "\n" - if (p && !prefixcmp(p, "author ")) { + if (p && starts_with(p, "author ")) { p = parse_user(p + 7, &ret->author, &ret->author_email, &ret->author_date); } - if (p && !prefixcmp(p, "committer ")) { + if (p && starts_with(p, "committer ")) { p = parse_user(p + 10, &ret->committer, &ret->committer_email, &ret->committer_date); } - if (p && !prefixcmp(p, "encoding ")) { + if (p && starts_with(p, "encoding ")) { p += 9; t = strchr(p, '\n'); if (t) { @@ -244,7 +244,7 @@ struct taginfo *cgit_parse_tag(struct tag *tag) if (*p == '\n') break; - if (!prefixcmp(p, "tagger ")) { + if (starts_with(p, "tagger ")) { p = parse_user(p + 7, &ret->tagger, &ret->tagger_email, &ret->tagger_date); } else { diff --git a/scan-tree.c b/scan-tree.c index 49de658..87fa0c7 100644 --- a/scan-tree.c +++ b/scan-tree.c @@ -61,7 +61,7 @@ static int gitconfig_config(const char *key, const char *value, void *cb) config_fn(repo, "desc", value); else if (!strcmp(key, "gitweb.category")) config_fn(repo, "section", value); - else if (!prefixcmp(key, "cgit.")) + else if (starts_with(key, "cgit.")) config_fn(repo, key + 5, value); return 0; @@ -105,7 +105,7 @@ static void add_repo(const char *base, struct strbuf *path, repo_config_fn fn) return; strbuf_setlen(path, pathlen); - if (prefixcmp(path->buf, base)) + if (!starts_with(path->buf, base)) strbuf_addbuf(&rel, path); else strbuf_addstr(&rel, path->buf + strlen(base) + 1); @@ -115,6 +115,7 @@ static void add_repo(const char *base, struct strbuf *path, repo_config_fn fn) else if (rel.len && rel.buf[rel.len - 1] == '/') strbuf_setlen(&rel, rel.len - 1); + fprintf(stderr, "add_repo(): %s\n", rel.buf); repo = cgit_add_repo(rel.buf); config_fn = fn; if (ctx.cfg.enable_git_config) { @@ -161,7 +162,8 @@ static void add_repo(const char *base, struct strbuf *path, repo_config_fn fn) *slash = '\0'; repo->section = xstrdup(rel.buf); *slash = '/'; - if (!prefixcmp(repo->name, repo->section)) { + fprintf(stderr, "repo->name %s, repo->section %s\n", repo->name, repo->section); + if (starts_with(repo->name, repo->section)) { repo->name += strlen(repo->section); if (*repo->name == '/') repo->name++; @@ -184,6 +186,7 @@ static void scan_path(const char *base, const char *path, repo_config_fn fn) size_t pathlen = strlen(path); struct stat st; + fprintf(stderr, "scan_path(): %s\n", path); if (!dir) { fprintf(stderr, "Error opening directory %s: %s (%d)\n", path, strerror(errno), errno); @@ -192,6 +195,7 @@ static void scan_path(const char *base, const char *path, repo_config_fn fn) strbuf_add(&pathbuf, path, strlen(path)); if (is_git_dir(pathbuf.buf)) { + fprintf(stderr, "scan_path() is_git_dir: %s\n", path); add_repo(base, &pathbuf, fn); goto end; } diff --git a/ui-clone.c b/ui-clone.c index d25553b..a4ffd6e 100644 --- a/ui-clone.c +++ b/ui-clone.c @@ -63,7 +63,7 @@ static void send_file(char *path) } ctx.page.mimetype = "application/octet-stream"; ctx.page.filename = path; - if (prefixcmp(ctx.repo->path, path)) + if (!starts_with(ctx.repo->path, path)) ctx.page.filename += strlen(ctx.repo->path) + 1; cgit_print_http_headers(); html_include(path); diff --git a/ui-log.c b/ui-log.c index 499534c..2de8017 100644 --- a/ui-log.c +++ b/ui-log.c @@ -63,21 +63,21 @@ void show_commit_decorations(struct commit *commit) deco = lookup_decoration(&name_decoration, &commit->object); html(""); while (deco) { - if (!prefixcmp(deco->name, "refs/heads/")) { + if (starts_with(deco->name, "refs/heads/")) { strncpy(buf, deco->name + 11, sizeof(buf) - 1); cgit_log_link(buf, NULL, "branch-deco", buf, NULL, ctx.qry.vpath, 0, NULL, NULL, ctx.qry.showmsg); } - else if (!prefixcmp(deco->name, "tag: refs/tags/")) { + else if (starts_with(deco->name, "tag: refs/tags/")) { strncpy(buf, deco->name + 15, sizeof(buf) - 1); cgit_tag_link(buf, NULL, "tag-deco", ctx.qry.head, buf); } - else if (!prefixcmp(deco->name, "refs/tags/")) { + else if (starts_with(deco->name, "refs/tags/")) { strncpy(buf, deco->name + 10, sizeof(buf) - 1); cgit_tag_link(buf, NULL, "tag-deco", ctx.qry.head, buf); } - else if (!prefixcmp(deco->name, "refs/remotes/")) { + else if (starts_with(deco->name, "refs/remotes/")) { if (!ctx.repo->enable_remote_branches) goto next; strncpy(buf, deco->name + 13, sizeof(buf) - 1); diff --git a/ui-refs.c b/ui-refs.c index 0da063f..7e58737 100644 --- a/ui-refs.c +++ b/ui-refs.c @@ -101,7 +101,7 @@ static void print_tag_downloads(const struct cgit_repo *repo, const char *ref) return; basename = cgit_repobasename(repo->url); - if (prefixcmp(ref, basename) != 0) { + if (!starts_with(ref, basename)) { if ((ref[0] == 'v' || ref[0] == 'V') && isdigit(ref[1])) ref++; if (isdigit(ref[0])) { @@ -239,9 +239,9 @@ void cgit_print_refs() html(""); - if (ctx.qry.path && !prefixcmp(ctx.qry.path, "heads")) + if (ctx.qry.path && starts_with(ctx.qry.path, "heads")) cgit_print_branches(0); - else if (ctx.qry.path && !prefixcmp(ctx.qry.path, "tags")) + else if (ctx.qry.path && starts_with(ctx.qry.path, "tags")) cgit_print_tags(0); else { cgit_print_branches(0); diff --git a/ui-repolist.c b/ui-repolist.c index 477a949..c2bcce1 100644 --- a/ui-repolist.c +++ b/ui-repolist.c @@ -99,7 +99,7 @@ static int is_in_url(struct cgit_repo *repo) { if (!ctx.qry.url) return 1; - if (repo->url && !prefixcmp(repo->url, ctx.qry.url)) + if (repo->url && starts_with(repo->url, ctx.qry.url)) return 1; return 0; } diff --git a/ui-shared.c b/ui-shared.c index 1ede2b0..9dde0a3 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -128,7 +128,7 @@ const char *cgit_repobasename(const char *reponame) /* strip trailing slashes */ while (p && rvbuf[p] == '/') rvbuf[p--] = 0; /* strip trailing .git */ - if (p >= 3 && !prefixcmp(&rvbuf[p-3], ".git")) { + if (p >= 3 && starts_with(&rvbuf[p-3], ".git")) { p -= 3; rvbuf[p--] = 0; } /* strip more trailing slashes if any */ diff --git a/ui-snapshot.c b/ui-snapshot.c index 3107b05..ea77eb4 100644 --- a/ui-snapshot.c +++ b/ui-snapshot.c @@ -99,7 +99,7 @@ static const struct cgit_snapshot_format *get_format(const char *filename) const struct cgit_snapshot_format *fmt; for (fmt = cgit_snapshot_formats; fmt->suffix; fmt++) { - if (!suffixcmp(filename, fmt->suffix)) + if (ends_with(filename, fmt->suffix)) return fmt; } return NULL; @@ -151,7 +151,7 @@ static const char *get_ref_from_filename(const char *url, const char *filename, goto out; reponame = cgit_repobasename(url); - if (prefixcmp(snapshot.buf, reponame) == 0) { + if (starts_with(snapshot.buf, reponame)) { const char *new_start = snapshot.buf; new_start += strlen(reponame); while (new_start && (*new_start == '-' || *new_start == '_')) diff --git a/ui-summary.c b/ui-summary.c index df99ce1..3728c3e 100644 --- a/ui-summary.c +++ b/ui-summary.c @@ -116,7 +116,7 @@ static char* append_readme_path(const char *filename, const char *ref, const cha if (!ref) { resolved_base = realpath(base_dir, NULL); resolved_full = realpath(full_path, NULL); - if (!resolved_base || !resolved_full || prefixcmp(resolved_full, resolved_base)) { + if (!resolved_base || !resolved_full || !starts_with(resolved_full, resolved_base)) { free(full_path); full_path = NULL; } -- 1.9.2 From list at eworm.de Sun May 4 21:34:50 2014 From: list at eworm.de (Christian Hesse) Date: Sun, 4 May 2014 21:34:50 +0200 Subject: [PATCH 1/1] git: update for git 2.0 In-Reply-To: <1399231899-16189-1-git-send-email-mail@eworm.de> References: <1399231899-16189-1-git-send-email-mail@eworm.de> Message-ID: <20140504213450.2e8f0e1a@leda.localdomain> Christian Hesse on Sun, 2014/05/04 21:31: > prefixcmp() and suffixcmp() have been remove, functionality is now > provided by starts_with() and ends_with(). Retrurn values have been > changed, so instead of just renaming we have to fix logic. > Everything else looks just fine. > --- > Makefile | 4 ++-- > cgit.c | 26 +++++++++++++------------- > git | 2 +- > parsing.c | 12 ++++++------ > scan-tree.c | 10 +++++++--- > ui-clone.c | 2 +- > ui-log.c | 8 ++++---- > ui-refs.c | 6 +++--- > ui-repolist.c | 2 +- > ui-shared.c | 2 +- > ui-snapshot.c | 4 ++-- > ui-summary.c | 2 +- > 12 files changed, 42 insertions(+), 38 deletions(-) Feel free to ignore this for now. I will update the patch for git 2.0 if it has not been merged then. Probably API will not change until release. -- main(a){char*c=/* Schoene Gruesse */"B?IJj;MEH" "CX:;",b;for(a/* Chris get my mail address: */=0;b=c[a++];) putchar(b-1/(/* gcc -o sig sig.c && ./sig */b/42*2-3)*42);} -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 490 bytes Desc: not available URL: From cgit at cryptocrack.de Sun May 4 22:03:13 2014 From: cgit at cryptocrack.de (Lukas Fleischer) Date: Sun, 04 May 2014 22:03:13 +0200 Subject: [PATCH 1/1] git: update for git 2.0 In-Reply-To: <1399231899-16189-1-git-send-email-mail@eworm.de> References: <1399231899-16189-1-git-send-email-mail@eworm.de> Message-ID: <20140504200313.13342.67443@typhoon.lan> On Sun, 04 May 2014 at 21:31:39, Christian Hesse wrote: > prefixcmp() and suffixcmp() have been remove, functionality is now > provided by starts_with() and ends_with(). Retrurn values have been > changed, so instead of just renaming we have to fix logic. > Everything else looks just fine. > --- > Makefile | 4 ++-- > cgit.c | 26 +++++++++++++------------- > git | 2 +- > parsing.c | 12 ++++++------ > scan-tree.c | 10 +++++++--- > ui-clone.c | 2 +- > ui-log.c | 8 ++++---- > ui-refs.c | 6 +++--- > ui-repolist.c | 2 +- > ui-shared.c | 2 +- > ui-snapshot.c | 4 ++-- > ui-summary.c | 2 +- > 12 files changed, 42 insertions(+), 38 deletions(-) > > [...] > - else if (!prefixcmp(name, "module-link.")) { > + else if (starts_with(name, "module-link.")) { > item = string_list_append(&repo->submodules, xstrdup(name + 12)); My original intention was to replace most of these with skip_prefix() (well, I actually wanted to wait for strip_prefix() to replace skip_prefix() but that didn't make it into Git 2.0). It would be great to see most of the starts_with() invocations (followed by hardcoded lengths) replaced by skip_prefix() but if you don't want to do it, I guess this change is okay for now. > item->util = xstrdup(value); > } else if (!strcmp(name, "section")) > @@ -102,7 +102,7 @@ static void config_cb(const char *name, const char *value) > ctx.repo = cgit_add_repo(value); > else if (ctx.repo && !strcmp(name, "repo.path")) > ctx.repo->path = trim_end(value, '/'); > - else if (ctx.repo && !prefixcmp(name, "repo.")) > + else if (ctx.repo && starts_with(name, "repo.")) > repo_config(ctx.repo, name + 5, value); > else if (!strcmp(name, "readme") && value != NULL) > string_list_append(&ctx.cfg.readme, xstrdup(value)); > @@ -264,7 +264,7 @@ static void config_cb(const char *name, const char *value) > [...] From noreplay at noreplay.com Fri May 9 02:56:41 2014 From: noreplay at noreplay.com (netsoftcompany.com) Date: Fri, 9 May 2014 03:56:41 +0300 Subject: Website(E-commerce)+Free Hosting Message-ID: ?Hello, With a 9+ years experience in software development customized based in Australia , USA and Romania Netsoftcompany is among the largest companies in IT sector . ORDER A WEBSITE AND GET A FREE WEB HOSTING PACKAGE FOR 1 YEAR . Netsoftcompany is an Romanian based software company that focuses on highly qualitative, timely delivered and cost-effective custom software development. With a rich and varied experience in providing custom software development and project management capabilities and stringent quality standards ensure us to develop solutions that give your business an edge over your competitors. If you want to increase your profit to your company and you need a customized software for your company ,contact us today to free estimation . Contact us today on http://www.netsoftcompany.com/contact-us The expertise of my company is: Cpanel , Android , Apache , ASP , Banner Design , Cisco , DNS , eCommerce , Facebook , Flash , Google App Engine , HTML , HTML 5 ,iPhone , Java , JavaFX , Javascript , JSP , Linux , MySQL , Oracle , OSCommerce , Parallels Desktop , Paypal API , PHP , Plesk , SEO , Shopping Carts , Social Engine , Social Networking , Software Testing , SQL , Symbian , System Admin , UNIX , Virtuozzo , Web Search , Web Security , Windows Desktop , Windows Mobile , Windows Server , Wordpress , XML. In present my company is partnered with : Cpanel Kaspersky Dell Microsoft Skrill Paypal 2checkout VMware ------------------------------------------------------------------------------------------------------------------------------------------------------------- Check our website www.netsoftcompany.com for more details and do not hesitate to contact us . Work with us and you have a high standard project . If you want i am able to signed a contract with you for more security and to see we are a serious company . Please check my website www.netsoftcompany.com for portfolio . Thanks, Netsoftcompany www.netsoftcompany.com +4-0766-58-99-69 ----------------------------------------------------------------------------------------------------------------------------------------------------------- NOTE ! In accordance with Law 365/2002 on electronic commerce, this message is not and can not be considered spam because: - Acceptance of receipt of the offer will not involve financial , your e -mail address was found either on a public website or a business guide or the addresses of other companies that have sent us their offer and we received a at business meetings and this message is addressed in order to invite you to benefit from our services without cost and is conveyed from the desire to keep you updated with the latest and most profitable services that we can provide . Because we understand and appreciate your privacy apologize if this message has reached you by mistake , and if you wish not to receive such messages in the future please contact us at the address or addresses indicating delete at getsemails.com email that you wish to be deleted from the database . Thank you ! - The message contains the actual contact data of our company that we invite you to use . - The message is intended only for legal entities / individuals mentioned as recipient and others authorized to receive it . - If you have received this message in error , please notify us immediately at delete at getsemails.com and then delete it from your system The opinions contained in this message belong to sender entirely except that when you declare it as belonging to the company. -------------- next part -------------- An HTML attachment was scrubbed... URL: From Aleister at bizsend1.ru Sat May 10 16:36:05 2014 From: Aleister at bizsend1.ru (VIPgoods) Date: Sat, 10 May 2014 18:36:05 +0400 Subject: LUXURY WATCHES,JEWELRY and ACCESSORIES Message-ID: <67F02B458D60436692013718853B60CC@rteqcp> Buy watch or bag in our shop. - http://x.co/4bY6b http://x.co/4bXsh -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: eflx.jpg Type: image/jpeg Size: 21111 bytes Desc: not available URL: From sandy.price at dbinfo.us Thu May 15 18:17:50 2014 From: sandy.price at dbinfo.us (Sandy Price) Date: Thu, 15 May 2014 12:17:50 -0400 Subject: [PC] Professional Contacts Message-ID: <66MOGD-AGF7-28MF-IO8G-TBJ6MELSQYUK@dbinfo.us> Hi, This is Sandy with Email Campaign Division, We are a Business Database provider. We can provide you prepackaged lists from any Industry as per your requirement that enables you to reach thousands of qualified prospects via verified Email; Phone & Direct mail. This list comes with full contains details like: Contact Name, Title, Company Name, Size, Physical Address, Business Email address, Phone & Fax numbers and etc. across USA, CA, and UK. Please fill in your requirement below and we will revert back to you with details of the number of email contacts we can provide you. Target Industry: _____________________________ (Your Targeted Criteria) Target Geography: ___________________________ (USA/Canada/UK/Asia e.t.c) Target Job Title: _____________________________ (CEO/President/Director/Manager e.t.c) If possible, refer me to the right person who makes decision on prospect lead generation. Warm regards, Sandy Price Client Relationship Executive Voice: (724) 901-1483 sandy.price at dbinfo.us As a Cost effective measures, we use sub URLs for our marketing services. Please reply us with your requirement we will get back to your with complete details of our services Reply with subject line as "Unsubscribe". --- This email is free from viruses and malware because avast! Antivirus protection is active. http://www.avast.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From gavlee888 at live.ie Fri May 16 11:10:40 2014 From: gavlee888 at live.ie (Gavin Lee) Date: Fri, 16 May 2014 10:10:40 +0100 Subject: cgit auth-filter Message-ID: Hi all, I have cgit up and running and am trying to enable the auth-filter using the simple-authentication lua script. I am having some trouble getting this working and would appreciate any help. Currently I have the script placed in /usr/lib/cgit/filters and have tried placing "auth-filter=lua:/usr/lib/cgit/filters/simple-authentication.lua" in the cgitrc files in /etc and inside the repository. Any ideas on what I am doing wrong? Thanks in advance, Gavin -------------- next part -------------- An HTML attachment was scrubbed... URL: From starryshi at sdr-logistics.com Sat May 17 16:03:55 2014 From: starryshi at sdr-logistics.com (SDR/SZX Starry Shi) Date: Sat, 17 May 2014 22:03:55 +0800 Subject: Transport Agent Message-ID: <201405172203551716891@shippingsz.in> An HTML attachment was scrubbed... URL: From Dax at bizsend1.ru Mon May 19 19:33:51 2014 From: Dax at bizsend1.ru (VIPgoods) Date: Mon, 19 May 2014 21:33:51 +0400 Subject: LUXURY JEWELRY,BAGS and WALLETS - SALE!! Message-ID: <88810A2D00B64CD68B23317855223DE3@mlzbeiw> Buy WATCHES JEWELRY and ACCESSORIES in our shop! - http://x.co/4bXvb http://x.co/4bXnz -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: xkavg.jpg Type: image/jpeg Size: 15624 bytes Desc: not available URL: From jennyj478 at gmail.com Tue May 20 03:56:59 2014 From: jennyj478 at gmail.com (Emily Hunter) Date: Tue, 20 May 2014 01:56:59 -0000 Subject: Current website isn't working? Message-ID: An HTML attachment was scrubbed... URL: From adventurevacationsrental at gmail.com Tue May 20 15:25:32 2014 From: adventurevacationsrental at gmail.com (James Connell) Date: Tue, 20 May 2014 13:25:32 -0000 Subject: Furnished accommodation for a short term rent Message-ID: An HTML attachment was scrubbed... URL: From info at tap4sales.com Wed May 21 03:27:22 2014 From: info at tap4sales.com (tap4offers) Date: Wed, 21 May 2014 01:27:22 -0000 Subject: Juice Cleanse with 60% off, 63% off Sun Loungers and save 34% on a GoPro Camera for Summer Snaps Message-ID: An HTML attachment was scrubbed... URL: From info at tap4sales.com Wed May 21 14:44:42 2014 From: info at tap4sales.com (tap4offers) Date: Wed, 21 May 2014 12:44:42 -0000 Subject: Juice Cleanse with 60% off, 63% off Sun Loungers and save 34% on a GoPro Camera for Summer Snaps Message-ID: An HTML attachment was scrubbed... URL: From barbarascott1 at live.com Wed May 21 17:32:24 2014 From: barbarascott1 at live.com (Jeff Solomon) Date: Wed, 21 May 2014 15:32:24 -0000 Subject: Are online reviews ruining you? Message-ID: An HTML attachment was scrubbed... URL: From info.reputiser at yahoo.com Fri May 23 05:08:31 2014 From: info.reputiser at yahoo.com (Stewen) Date: Fri, 23 May 2014 03:08:31 -0000 Subject: Fake reviews may be killing your business Message-ID: An HTML attachment was scrubbed... URL: From james.walker at sfs.com Fri May 23 10:32:50 2014 From: james.walker at sfs.com (James) Date: Fri, 23 May 2014 08:32:50 -0000 Subject: Demand more from your website Message-ID: An HTML attachment was scrubbed... URL: From oggioni.walter at gmail.com Sun May 25 22:40:22 2014 From: oggioni.walter at gmail.com (Walter Oggioni) Date: Sun, 25 May 2014 22:40:22 +0200 Subject: pull request Message-ID: hi, I'm an arch linux user, I installed cgit 10.1 on two of my machines carefully following the steps on https://wiki.archlinux.org/index.php/Cgit, but never managed to make syntax highlighting working. After lots of headache I discovered that the script specified in cgitrc after "source-filter=" was actually never executed, then I downloaded the source, and as far as I could understand, the only source-filter that was used was the repo.source-filter, (I might be wrong because I haven't read all the code), while ctx.cfg.source_filter was ignored. To solve the problem I added this if(!ctx.repo->source_filter) { ctx.repo->source_filter = ctx.cfg.source_filter; } to filter.c and now everything works. I just wanted to know if you can confirm this is bug, or maybe there is something wrong in my installation/configuration Walter Oggioni -------------- next part -------------- An HTML attachment was scrubbed... URL: From oggioni.walter at gmail.com Sun May 25 22:46:46 2014 From: oggioni.walter at gmail.com (Walter Oggioni) Date: Sun, 25 May 2014 22:46:46 +0200 Subject: Fwd: pull request In-Reply-To: References: Message-ID: hi, I'm an arch linux user, I installed cgit 10.1 on two of my machines carefully following the steps on https://wiki.archlinux.org/index.php/Cgit, but never managed to make syntax highlighting working. After lots of headache I discovered that the script specified in cgitrc after "source-filter=" was actually never executed, then I downloaded the source, and as far as I could understand, the only source-filter that was used was the repo.source-filter, (I might be wrong because I haven't read all the code), while ctx.cfg.source_filter was ignored. To solve the problem I added this if(!ctx.repo->source_filter) { ctx.repo->source_filter = ctx.cfg.source_filter; } to *ui-tree.c at line 47* and now everything works. I just wanted to know if you can confirm this is bug, or maybe there is something wrong in my installation/configuration Walter Oggioni -------------- next part -------------- An HTML attachment was scrubbed... URL: From noreply at c-p-u.com Mon May 26 15:05:05 2014 From: noreply at c-p-u.com (Discount-Canadian-Meds) Date: Mon, 26 May 2014 12:05:05 -0100 Subject: Even if you have a lot of money, wasting them on fake medications is not a good idea! Message-ID: Me ds hf or hM en Vi Ci Ci Le Pr ag al al vi op ra is is tr ec S a ia of t Ta bs $0 $1 $2 $2 $0 .9 .6 .5 .5 .4 9 5 0 0 5 (65+) See more... Me ds hf or hW om en Ac Cl De Fe Fe om om fl ma ma pl id uc le le ia an C V ia ia li gr s a $1 $0 $1 $1 $0 .7 .4 .2 .1 .7 5 5 5 1 2 (45+) See more... An ti bi ot ic s Am Au Ba Ce Ci ox gm ct ph pr ic en ri al o il ti m ex li n in n $0 $1 $0 $0 $0 .5 .5 .3 .2 .3 2 9 5 4 0 (60+) See more... Pa in ki ll er s Ar Ce Di Fl To co le cl ex ra xi br of er do a ex en il l ac G el $0 $0 $9 $0 $0 .3 .5 .0 .8 .5 8 9 0 9 9 (39+) See more... As th ma h font-size:13pt; font-weight:bold; color:white'>hA ll er gy Ad Fl Na Se Si va ov so re ng ir en ne ve ul t x nt ai r $2 $1 $1 $1 $0 4. 9. 7. 8. .9 95 95 99 95 9 (32+) See more... De al in gh wi th hD ep re ss io n Ce Cy Le Pr Pr le mb xa is oz xa al pr ti ac ta o q $0 $1 $0 $1 $0 .5 .1 .6 .1 .3 0 3 3 1 5 (24+) See more... Ge ne ra lh Me ds Ar Mo Li Pl Pr mo ti pi av ed ur li to ix ni um r so lo ne $0 $0 $0 $0 $0 .2 .4 .3 .8 .1 2 2 5 5 5 (55+) See more... Be st hB uy Am Ci Fe Le Vi ox al ma vi ag ic is le tr ra il V a S li ia up n gr er a F or ce $0 $1 $0 $2 $4 .5 .6 .7 .5 .2 2 5 2 0 5 (600+) See more... -------------- next part -------------- An HTML attachment was scrubbed... URL: From marinaclark1985 at mail.com Wed May 28 19:01:35 2014 From: marinaclark1985 at mail.com (Savi Garcia) Date: Wed, 28 May 2014 17:01:35 -0000 Subject: Why is Google not happy with your website? Message-ID: An HTML attachment was scrubbed... URL: From seabeachvacations at gmail.com Thu May 29 09:55:12 2014 From: seabeachvacations at gmail.com (James Connell) Date: Thu, 29 May 2014 07:55:12 -0000 Subject: Find rental accommodations quickly Message-ID: An HTML attachment was scrubbed... URL: From list at eworm.de Thu May 29 17:00:09 2014 From: list at eworm.de (Christian Hesse) Date: Thu, 29 May 2014 17:00:09 +0200 Subject: [PATCH 1/1] git: update for git 2.0 In-Reply-To: <20140504200313.13342.67443@typhoon.lan> References: <1399231899-16189-1-git-send-email-mail@eworm.de> <20140504200313.13342.67443@typhoon.lan> Message-ID: <20140529170009.7be23b2f@leda.localdomain> Lukas Fleischer on Sun, 2014/05/04 22:03: > On Sun, 04 May 2014 at 21:31:39, Christian Hesse wrote: > > prefixcmp() and suffixcmp() have been remove, functionality is now > > provided by starts_with() and ends_with(). Retrurn values have been > > changed, so instead of just renaming we have to fix logic. > > Everything else looks just fine. > > --- > > Makefile | 4 ++-- > > cgit.c | 26 +++++++++++++------------- > > git | 2 +- > > parsing.c | 12 ++++++------ > > scan-tree.c | 10 +++++++--- > > ui-clone.c | 2 +- > > ui-log.c | 8 ++++---- > > ui-refs.c | 6 +++--- > > ui-repolist.c | 2 +- > > ui-shared.c | 2 +- > > ui-snapshot.c | 4 ++-- > > ui-summary.c | 2 +- > > 12 files changed, 42 insertions(+), 38 deletions(-) > > > > [...] > > - else if (!prefixcmp(name, "module-link.")) { > > + else if (starts_with(name, "module-link.")) { > > item = string_list_append(&repo->submodules, xstrdup(name > > + 12)); > > My original intention was to replace most of these with skip_prefix() > (well, I actually wanted to wait for strip_prefix() to replace > skip_prefix() but that didn't make it into Git 2.0). It would be great > to see most of the starts_with() invocations (followed by hardcoded > lengths) replaced by skip_prefix() but if you don't want to do it, I > guess this change is okay for now. I would suggest going the simplest transition first, then make enhancements in a later commit. Replying with a patch for final git v2.0.0. -- main(a){char*c=/* Schoene Gruesse */"C7?Bj;MEH" "CX:;",b;for(a/* Chris get my mail address: */=0;b=c[a++];) putchar(b-1/(/* gcc -o sig sig.c && ./sig */b/42*2-3)*42);} -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 490 bytes Desc: not available URL: From mail at eworm.de Thu May 29 17:35:46 2014 From: mail at eworm.de (Christian Hesse) Date: Thu, 29 May 2014 17:35:46 +0200 Subject: [PATCH 1/1] git: update for git 2.0 Message-ID: <1401377746-6165-1-git-send-email-mail@eworm.de> prefixcmp() and suffixcmp() have been remove, functionality is now provided by starts_with() and ends_with(). Retrurn values have been changed, so instead of just renaming we have to fix logic. Everything else looks just fine. --- Makefile | 2 +- cgit.c | 26 +++++++++++++------------- git | 2 +- parsing.c | 12 ++++++------ scan-tree.c | 10 +++++++--- ui-clone.c | 2 +- ui-log.c | 8 ++++---- ui-refs.c | 6 +++--- ui-repolist.c | 2 +- ui-shared.c | 2 +- ui-snapshot.c | 4 ++-- ui-summary.c | 2 +- 12 files changed, 41 insertions(+), 37 deletions(-) diff --git a/Makefile b/Makefile index e6ec0dc..0223a17 100644 --- a/Makefile +++ b/Makefile @@ -14,7 +14,7 @@ htmldir = $(docdir) pdfdir = $(docdir) mandir = $(prefix)/share/man SHA1_HEADER = -GIT_VER = 1.9.2 +GIT_VER = 2.0.0 GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.gz INSTALL = install COPYTREE = cp -r diff --git a/cgit.c b/cgit.c index f488ebf..20f6e27 100644 --- a/cgit.c +++ b/cgit.c @@ -69,7 +69,7 @@ static void repo_config(struct cgit_repo *repo, const char *name, const char *va repo->max_stats = cgit_find_stats_period(value, NULL); else if (!strcmp(name, "module-link")) repo->module_link= xstrdup(value); - else if (!prefixcmp(name, "module-link.")) { + else if (starts_with(name, "module-link.")) { item = string_list_append(&repo->submodules, xstrdup(name + 12)); item->util = xstrdup(value); } else if (!strcmp(name, "section")) @@ -102,7 +102,7 @@ static void config_cb(const char *name, const char *value) ctx.repo = cgit_add_repo(value); else if (ctx.repo && !strcmp(name, "repo.path")) ctx.repo->path = trim_end(value, '/'); - else if (ctx.repo && !prefixcmp(name, "repo.")) + else if (ctx.repo && starts_with(name, "repo.")) repo_config(ctx.repo, name + 5, value); else if (!strcmp(name, "readme") && value != NULL) string_list_append(&ctx.cfg.readme, xstrdup(value)); @@ -264,7 +264,7 @@ static void config_cb(const char *name, const char *value) ctx.cfg.branch_sort = 1; if (!strcmp(value, "name")) ctx.cfg.branch_sort = 0; - } else if (!prefixcmp(name, "mimetype.")) + } else if (starts_with(name, "mimetype.")) add_mimetype(name + 9, value); else if (!strcmp(name, "include")) parse_configfile(expand_macros(value), config_cb); @@ -454,7 +454,7 @@ static char *guess_defbranch(void) unsigned char sha1[20]; ref = resolve_ref_unsafe("HEAD", sha1, 0, NULL); - if (!ref || prefixcmp(ref, "refs/heads/")) + if (!ref || !starts_with(ref, "refs/heads/")) return "master"; return xstrdup(ref + 11); } @@ -941,28 +941,28 @@ static void cgit_parse_args(int argc, const char **argv) exit(0); } - if (!prefixcmp(argv[i], "--cache=")) { + if (starts_with(argv[i], "--cache=")) { ctx.cfg.cache_root = xstrdup(argv[i] + 8); } else if (!strcmp(argv[i], "--nocache")) { ctx.cfg.nocache = 1; } else if (!strcmp(argv[i], "--nohttp")) { ctx.env.no_http = "1"; - } else if (!prefixcmp(argv[i], "--query=")) { + } else if (starts_with(argv[i], "--query=")) { ctx.qry.raw = xstrdup(argv[i] + 8); - } else if (!prefixcmp(argv[i], "--repo=")) { + } else if (starts_with(argv[i], "--repo=")) { ctx.qry.repo = xstrdup(argv[i] + 7); - } else if (!prefixcmp(argv[i], "--page=")) { + } else if (starts_with(argv[i], "--page=")) { ctx.qry.page = xstrdup(argv[i] + 7); - } else if (!prefixcmp(argv[i], "--head=")) { + } else if (starts_with(argv[i], "--head=")) { ctx.qry.head = xstrdup(argv[i] + 7); ctx.qry.has_symref = 1; - } else if (!prefixcmp(argv[i], "--sha1=")) { + } else if (starts_with(argv[i], "--sha1=")) { ctx.qry.sha1 = xstrdup(argv[i] + 7); ctx.qry.has_sha1 = 1; - } else if (!prefixcmp(argv[i], "--ofs=")) { + } else if (starts_with(argv[i], "--ofs=")) { ctx.qry.ofs = atoi(argv[i] + 6); - } else if (!prefixcmp(argv[i], "--scan-tree=") || - !prefixcmp(argv[i], "--scan-path=")) { + } else if (starts_with(argv[i], "--scan-tree=") || + starts_with(argv[i], "--scan-path=")) { /* * HACK: The global snapshot bit mask defines the set * of allowed snapshot formats, but the config file diff --git a/git b/git index 0bc85ab..e156455 160000 --- a/git +++ b/git @@ -1 +1 @@ -Subproject commit 0bc85abb7aa9b24b093253018801a0fb43d01122 +Subproject commit e156455ea49124c140a67623f22a393db62d5d98 diff --git a/parsing.c b/parsing.c index 5b4b1f4..073f46f 100644 --- a/parsing.c +++ b/parsing.c @@ -147,25 +147,25 @@ struct commitinfo *cgit_parse_commit(struct commit *commit) if (p == NULL) return ret; - if (prefixcmp(p, "tree ")) + if (!starts_with(p, "tree ")) die("Bad commit: %s", sha1_to_hex(commit->object.sha1)); else p += 46; // "tree " + hex[40] + "\n" - while (!prefixcmp(p, "parent ")) + while (starts_with(p, "parent ")) p += 48; // "parent " + hex[40] + "\n" - if (p && !prefixcmp(p, "author ")) { + if (p && starts_with(p, "author ")) { p = parse_user(p + 7, &ret->author, &ret->author_email, &ret->author_date); } - if (p && !prefixcmp(p, "committer ")) { + if (p && starts_with(p, "committer ")) { p = parse_user(p + 10, &ret->committer, &ret->committer_email, &ret->committer_date); } - if (p && !prefixcmp(p, "encoding ")) { + if (p && starts_with(p, "encoding ")) { p += 9; t = strchr(p, '\n'); if (t) { @@ -244,7 +244,7 @@ struct taginfo *cgit_parse_tag(struct tag *tag) if (*p == '\n') break; - if (!prefixcmp(p, "tagger ")) { + if (starts_with(p, "tagger ")) { p = parse_user(p + 7, &ret->tagger, &ret->tagger_email, &ret->tagger_date); } else { diff --git a/scan-tree.c b/scan-tree.c index 49de658..87fa0c7 100644 --- a/scan-tree.c +++ b/scan-tree.c @@ -61,7 +61,7 @@ static int gitconfig_config(const char *key, const char *value, void *cb) config_fn(repo, "desc", value); else if (!strcmp(key, "gitweb.category")) config_fn(repo, "section", value); - else if (!prefixcmp(key, "cgit.")) + else if (starts_with(key, "cgit.")) config_fn(repo, key + 5, value); return 0; @@ -105,7 +105,7 @@ static void add_repo(const char *base, struct strbuf *path, repo_config_fn fn) return; strbuf_setlen(path, pathlen); - if (prefixcmp(path->buf, base)) + if (!starts_with(path->buf, base)) strbuf_addbuf(&rel, path); else strbuf_addstr(&rel, path->buf + strlen(base) + 1); @@ -115,6 +115,7 @@ static void add_repo(const char *base, struct strbuf *path, repo_config_fn fn) else if (rel.len && rel.buf[rel.len - 1] == '/') strbuf_setlen(&rel, rel.len - 1); + fprintf(stderr, "add_repo(): %s\n", rel.buf); repo = cgit_add_repo(rel.buf); config_fn = fn; if (ctx.cfg.enable_git_config) { @@ -161,7 +162,8 @@ static void add_repo(const char *base, struct strbuf *path, repo_config_fn fn) *slash = '\0'; repo->section = xstrdup(rel.buf); *slash = '/'; - if (!prefixcmp(repo->name, repo->section)) { + fprintf(stderr, "repo->name %s, repo->section %s\n", repo->name, repo->section); + if (starts_with(repo->name, repo->section)) { repo->name += strlen(repo->section); if (*repo->name == '/') repo->name++; @@ -184,6 +186,7 @@ static void scan_path(const char *base, const char *path, repo_config_fn fn) size_t pathlen = strlen(path); struct stat st; + fprintf(stderr, "scan_path(): %s\n", path); if (!dir) { fprintf(stderr, "Error opening directory %s: %s (%d)\n", path, strerror(errno), errno); @@ -192,6 +195,7 @@ static void scan_path(const char *base, const char *path, repo_config_fn fn) strbuf_add(&pathbuf, path, strlen(path)); if (is_git_dir(pathbuf.buf)) { + fprintf(stderr, "scan_path() is_git_dir: %s\n", path); add_repo(base, &pathbuf, fn); goto end; } diff --git a/ui-clone.c b/ui-clone.c index d25553b..a4ffd6e 100644 --- a/ui-clone.c +++ b/ui-clone.c @@ -63,7 +63,7 @@ static void send_file(char *path) } ctx.page.mimetype = "application/octet-stream"; ctx.page.filename = path; - if (prefixcmp(ctx.repo->path, path)) + if (!starts_with(ctx.repo->path, path)) ctx.page.filename += strlen(ctx.repo->path) + 1; cgit_print_http_headers(); html_include(path); diff --git a/ui-log.c b/ui-log.c index 499534c..2de8017 100644 --- a/ui-log.c +++ b/ui-log.c @@ -63,21 +63,21 @@ void show_commit_decorations(struct commit *commit) deco = lookup_decoration(&name_decoration, &commit->object); html(""); while (deco) { - if (!prefixcmp(deco->name, "refs/heads/")) { + if (starts_with(deco->name, "refs/heads/")) { strncpy(buf, deco->name + 11, sizeof(buf) - 1); cgit_log_link(buf, NULL, "branch-deco", buf, NULL, ctx.qry.vpath, 0, NULL, NULL, ctx.qry.showmsg); } - else if (!prefixcmp(deco->name, "tag: refs/tags/")) { + else if (starts_with(deco->name, "tag: refs/tags/")) { strncpy(buf, deco->name + 15, sizeof(buf) - 1); cgit_tag_link(buf, NULL, "tag-deco", ctx.qry.head, buf); } - else if (!prefixcmp(deco->name, "refs/tags/")) { + else if (starts_with(deco->name, "refs/tags/")) { strncpy(buf, deco->name + 10, sizeof(buf) - 1); cgit_tag_link(buf, NULL, "tag-deco", ctx.qry.head, buf); } - else if (!prefixcmp(deco->name, "refs/remotes/")) { + else if (starts_with(deco->name, "refs/remotes/")) { if (!ctx.repo->enable_remote_branches) goto next; strncpy(buf, deco->name + 13, sizeof(buf) - 1); diff --git a/ui-refs.c b/ui-refs.c index 0da063f..7e58737 100644 --- a/ui-refs.c +++ b/ui-refs.c @@ -101,7 +101,7 @@ static void print_tag_downloads(const struct cgit_repo *repo, const char *ref) return; basename = cgit_repobasename(repo->url); - if (prefixcmp(ref, basename) != 0) { + if (!starts_with(ref, basename)) { if ((ref[0] == 'v' || ref[0] == 'V') && isdigit(ref[1])) ref++; if (isdigit(ref[0])) { @@ -239,9 +239,9 @@ void cgit_print_refs() html("
"); - if (ctx.qry.path && !prefixcmp(ctx.qry.path, "heads")) + if (ctx.qry.path && starts_with(ctx.qry.path, "heads")) cgit_print_branches(0); - else if (ctx.qry.path && !prefixcmp(ctx.qry.path, "tags")) + else if (ctx.qry.path && starts_with(ctx.qry.path, "tags")) cgit_print_tags(0); else { cgit_print_branches(0); diff --git a/ui-repolist.c b/ui-repolist.c index 477a949..c2bcce1 100644 --- a/ui-repolist.c +++ b/ui-repolist.c @@ -99,7 +99,7 @@ static int is_in_url(struct cgit_repo *repo) { if (!ctx.qry.url) return 1; - if (repo->url && !prefixcmp(repo->url, ctx.qry.url)) + if (repo->url && starts_with(repo->url, ctx.qry.url)) return 1; return 0; } diff --git a/ui-shared.c b/ui-shared.c index 1ede2b0..9dde0a3 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -128,7 +128,7 @@ const char *cgit_repobasename(const char *reponame) /* strip trailing slashes */ while (p && rvbuf[p] == '/') rvbuf[p--] = 0; /* strip trailing .git */ - if (p >= 3 && !prefixcmp(&rvbuf[p-3], ".git")) { + if (p >= 3 && starts_with(&rvbuf[p-3], ".git")) { p -= 3; rvbuf[p--] = 0; } /* strip more trailing slashes if any */ diff --git a/ui-snapshot.c b/ui-snapshot.c index 3107b05..ea77eb4 100644 --- a/ui-snapshot.c +++ b/ui-snapshot.c @@ -99,7 +99,7 @@ static const struct cgit_snapshot_format *get_format(const char *filename) const struct cgit_snapshot_format *fmt; for (fmt = cgit_snapshot_formats; fmt->suffix; fmt++) { - if (!suffixcmp(filename, fmt->suffix)) + if (ends_with(filename, fmt->suffix)) return fmt; } return NULL; @@ -151,7 +151,7 @@ static const char *get_ref_from_filename(const char *url, const char *filename, goto out; reponame = cgit_repobasename(url); - if (prefixcmp(snapshot.buf, reponame) == 0) { + if (starts_with(snapshot.buf, reponame)) { const char *new_start = snapshot.buf; new_start += strlen(reponame); while (new_start && (*new_start == '-' || *new_start == '_')) diff --git a/ui-summary.c b/ui-summary.c index df99ce1..3728c3e 100644 --- a/ui-summary.c +++ b/ui-summary.c @@ -116,7 +116,7 @@ static char* append_readme_path(const char *filename, const char *ref, const cha if (!ref) { resolved_base = realpath(base_dir, NULL); resolved_full = realpath(full_path, NULL); - if (!resolved_base || !resolved_full || prefixcmp(resolved_full, resolved_base)) { + if (!resolved_base || !resolved_full || !starts_with(resolved_full, resolved_base)) { free(full_path); full_path = NULL; } -- 1.9.3 From jessicajones83 at live.com Fri May 30 08:29:29 2014 From: jessicajones83 at live.com (Jeff Solomon) Date: Fri, 30 May 2014 06:29:29 -0000 Subject: Your Website May be your worst enemy! Message-ID: An HTML attachment was scrubbed... URL: From info.reputiser at yahoo.com Fri May 30 15:56:10 2014 From: info.reputiser at yahoo.com (Jeff Solomon) Date: Fri, 30 May 2014 13:56:10 -0000 Subject: Fake reviews may be killing your business Message-ID: An HTML attachment was scrubbed... URL: From czcuh at yahoo.com Sat May 31 11:04:16 2014 From: czcuh at yahoo.com (Lupe Lovett) Date: Sat, 31 May 2014 09:04:16 -0000 Subject: explicit ring-tones Message-ID: An HTML attachment was scrubbed... URL: