On Fri, 9 Jun 2006, Jon Smirl wrote: > > Are we sure cvsps is ok? It is generating 500MB of warnings when I run it. Do they go away with these patches? Linus --- commit 3d1ebcef6b4f9f6c9064efd64da4dd30d93c3c96 Author: Linus Torvalds <torvalds@xxxxxxxxxxx> Date: Wed Mar 22 17:20:20 2006 -0800 Fix branch ancestor calculation Not having any ancestor at all means that any valid ancestor (even of "depth 0") is fine. Signed-off-by: Linus Torvalds <torvalds@xxxxxxxx> diff --git a/cvsps.c b/cvsps.c index c22147e..2695a0f 100644 --- a/cvsps.c +++ b/cvsps.c @@ -2599,7 +2599,7 @@ static void determine_branch_ancestor(Pa * note: rev is the pre-commit revision, not the post-commit */ if (!head_ps->ancestor_branch) - d1 = 0; + d1 = -1; else if (strcmp(ps->branch, rev->branch) == 0) continue; else if (strcmp(head_ps->ancestor_branch, "HEAD") == 0) commit 82fcf7e31bbeae3b01a8656549e9b8fd89d598eb Author: Linus Torvalds <torvalds@xxxxxxxxxxx> Date: Wed Mar 22 11:23:37 2006 -0800 Improve handling of file collisions in the same patchset Take the file revision into account. diff --git a/cvsps.c b/cvsps.c index 1e64e3c..c22147e 100644 --- a/cvsps.c +++ b/cvsps.c @@ -2384,8 +2384,31 @@ void patch_set_add_member(PatchSet * ps, for (next = ps->members.next; next != &ps->members; next = next->next) { PatchSetMember * m = list_entry(next, PatchSetMember, link); - if (m->file == psm->file && ps->collision_link.next == NULL) - list_add(&ps->collision_link, &collisions); + if (m->file == psm->file) { + int order = compare_rev_strings(psm->post_rev->rev, m->post_rev->rev); + + /* + * Same revision too? Add it to the collision list + * if it isn't already. + */ + if (!order) { + if (ps->collision_link.next == NULL) + list_add(&ps->collision_link, &collisions); + return; + } + + /* + * If this is an older revision than the one we already have + * in this patchset, just ignore it + */ + if (order < 0) + return; + + /* + * This is a newer one, remove the old one + */ + list_del(&m->link); + } } psm->ps = ps; commit 534120d9a47062eecd7b53fd7ac0b70d97feb4fd Author: Linus Torvalds <torvalds@xxxxxxxxxxx> Date: Wed Mar 22 11:20:59 2006 -0800 Increase log-length limit to 64kB Yeah, it should be dynamic. I'm lazy. diff --git a/cvsps_types.h b/cvsps_types.h index b41e2a9..dba145d 100644 --- a/cvsps_types.h +++ b/cvsps_types.h @@ -8,7 +8,7 @@ #define CVSPS_TYPES_H #include <time.h> -#define LOG_STR_MAX 32768 +#define LOG_STR_MAX 65536 #define AUTH_STR_MAX 64 #define REV_STR_MAX 64 #define MIN(a, b) ((a) < (b) ? (a) : (b)) - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html