Re: git-cvs-import retries
- From
Junio C Hamano <junkio@cox.net>
- Date
- Feb 18, 2006, 07:27 UTC
- Message-ID
- <7v1wy1t9cb.fsf@assigned-by-dhcp.cox.net>
- In-Reply-To
- <mj+md-20060217.193146.10308.albireo@ucw.cz>
Martin Mares <mj@ucw.cz> writes:
Show 16 quoted lines
> Hello! >... > This patch extends the retry check and makes the symptoms go away. > However, take it with a grain of salt as I don't understand yet why the > connection is aborted. > > Have a nice fortnight > -- > Martin `MJ' Mares <mj@ucw.cz> http://atrey.karlin.mff.cuni.cz/~mj/ > Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth > A jury consists of 12 persons chosen to decide who has the better lawyer. > > > Signed-Off-By: Martin Mares <mj@ucw.cz> > > --- old/git-cvsimport 2006-02-17 13:02:24.000000000 +0100
First, one technicality. You can see what's wrong with the above, right? Remember, the top part of your message goes into the commit log, so we do not want "Hello!" nor signature.
Show 10 quoted lines
> +++ new/git-cvsimport 2006-02-17 18:13:06.000000000 +0100
> @@ -371,7 +371,7 @@
>
> $self->_file($fn,$rev) and $res = $self->_line($fh);
>
> - if (!defined $res) {
> + if (!defined $res || $res eq '') {
> # retry
> $self->conn();
> $self->_file($fn,$rev)I read _line() three times but its return value is the lexical variable $res which is initialized to 0 and then either reset to 0 by assignment or updated with $res += somethingelse. So I do not see how you can get a defined but empty string in there. Even when _file() returns false, the $res variable in file() (the function you are modifying) is not initialized, so it would stay undefined.
Maybe I am missing something very obvious, but I cannot see how this can make any difference. Please enlighten.