You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2004/08/20 05:39:35 UTC
cvs commit: james-server/src/java/org/apache/james/transport/mailets RemoteDelivery.java
noel 2004/08/19 20:39:35
Modified: src/java/org/apache/james/transport/mailets Tag:
branch_2_1_fcs RemoteDelivery.java
Log:
Fix JAMES-318. JAMES-318 was identical to JAMES-236 except for the location of the code. The fix is essentially the same one used to fix JAMES-236.
Revision Changes Path
No revision
No revision
1.33.4.22 +15 -8 james-server/src/java/org/apache/james/transport/mailets/RemoteDelivery.java
Index: RemoteDelivery.java
===================================================================
RCS file: /home/cvs/james-server/src/java/org/apache/james/transport/mailets/RemoteDelivery.java,v
retrieving revision 1.33.4.21
retrieving revision 1.33.4.22
diff -u -r1.33.4.21 -r1.33.4.22
--- RemoteDelivery.java 2 May 2004 06:08:37 -0000 1.33.4.21
+++ RemoteDelivery.java 20 Aug 2004 03:39:35 -0000 1.33.4.22
@@ -1094,12 +1094,14 @@
private Iterator addresses = null;
public boolean hasNext() {
- return gateways.hasNext();
- }
-
- public Object next() {
- if (addresses == null || !addresses.hasNext())
- {
+ /* Make sure that when next() is called, that we can
+ * provide a HostAddress. This means that we need to
+ * have an inner iterator, and verify that it has
+ * addresses. We could, for example, run into a
+ * situation where the next gateway didn't have any
+ * valid addresses.
+ */
+ if ((addresses == null || !addresses.hasNext()) && gateways.hasNext()) do {
String server = (String) gateways.next();
String port = "25";
@@ -1134,7 +1136,12 @@
log("Unknown gateway host: " + uhe.getMessage().trim());
log("This could be a DNS server error or configuration error.");
}
- }
+ } while (!addresses.hasNext() && gateways.hasNext());
+
+ return addresses != null && addresses.hasNext();
+ }
+
+ public Object next() {
return (addresses != null) ? addresses.next() : null;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org