Index: lib/transfer.c
===================================================================
RCS file: /cvsroot/curl/curl/lib/transfer.c,v
retrieving revision 1.291
diff -u -r1.291 transfer.c
--- lib/transfer.c	30 Jan 2006 08:20:52 -0000	1.291
+++ lib/transfer.c	7 Feb 2006 22:33:48 -0000
@@ -2100,11 +2100,12 @@
   bool retry = FALSE;
 
   if((conn->keep.bytecount+conn->headerbytecount == 0) &&
-     conn->bits.reuse) {
-    /* We got no data and we attempted to re-use a connection. This might
-       happen if the connection was left alive when we were done using it
-       before, but that was closed when we wanted to read from it again. Bad
-       luck. Retry the same request on a fresh connect! */
+     conn->bits.reuse &&
+     !conn->bits.no_body) {
+    /* We got no data, we attempted to re-use a connection and yet we want a
+       "body". This might happen if the connection was left alive when we were
+       done using it before, but that was closed when we wanted to read from
+       it again. Bad luck. Retry the same request on a fresh connect! */
     infof(conn->data, "Connection died, retrying a fresh connect\n");
     *url = strdup(conn->data->change.url);
 
