mux 2006-02-12 04:10:28 UTC FreeBSD projects repository
Modified files: csup keyword.c keyword.h updater.c Log: - Unbreak updates from a PostgreSQL CVSup server. This is really, really weird... What was breaking updates from OpenBSD CVSup servers was that I wasn't expanding the $OpenBSD$ tags, because I wasn't enabling aliases when adding them; and the server was just doing that, that is adding $OpenBSD$ as an alias for $Id$. Later, I realized that this broke updates from PostgreSQL servers because those were expecting me _not_ to expand the $PostgreSQL$ tags. Similarly to the OpenBSD server, I was just being told that $PostgreSQL$ was an alias for $Id$. The actual difference between those two servers is what looks really weird. CVSup computes the keyLenMin and keyLenMax variables, that are the minimum and the maximum length of a keyword. It only computes those values on the standard RCS keywords ($Id$, $Revision$ etc) and doesn't update them when adding an alias. It then uses these variables to reject any keyword bigger than the max or shorter than the min. And, guess what? "PostgreSQL" is longer than the longest RCS keyword, which is "CVSHeader". I'm adding a big comment to explain this stuff. - While I'm here, move the parsing of the expansion mode where it more rightly belongs, in keyword.c, accessible through the new keyword_decode_expand() function. Revision Changes Path 1.26 +37 -7 projects/csup/keyword.c 1.10 +2 -1 projects/csup/keyword.h 1.74 +3 -16 projects/csup/updater.c _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "[EMAIL PROTECTED]"