diff --git a/CHANGELOG b/CHANGELOG
index fa3f7450b072ab976de4dd821a14033a8e7d20e6..db50b57e85bace7c034f6fd83a0bb0422451b858 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,9 @@
 Changes since U-Boot 1.1.4:
 ======================================================================
 
+* Fix behaviour if gatewayip is not set
+  Patch by Robin Gilks, 23 Dec 2004
+
 * Fix cleanup for netstart board.
   Remove build results from repository
 
diff --git a/net/net.c b/net/net.c
index 37c5fb698e1b18ef1a4bc925a3685b1fe9dbddb1..506203761f43bb54d4115f3715b50b807a35b423 100644
--- a/net/net.c
+++ b/net/net.c
@@ -222,8 +222,10 @@ void ArpRequest (void)
 	    (NetOurIP & NetOurSubnetMask)) {
 		if (NetOurGatewayIP == 0) {
 			puts ("## Warning: gatewayip needed but not set\n");
+			NetArpWaitReplyIP = NetArpWaitPacketIP;
+		} else {
+			NetArpWaitReplyIP = NetOurGatewayIP;
 		}
-		NetArpWaitReplyIP = NetOurGatewayIP;
 	} else {
 		NetArpWaitReplyIP = NetArpWaitPacketIP;
 	}