--- urllib2.py.orig	Sun Apr 27 01:49:40 2003
+++ urllib2.py	Sun Apr 27 01:51:55 2003
@@ -207,12 +207,6 @@
                 return getattr(self, attr)
         raise AttributeError, attr
 
-    def get_method(self):
-        if self.has_data():
-            return "POST"
-        else:
-            return "GET"
-
     def add_data(self, data):
         self.data = data
 
@@ -418,12 +412,11 @@
         None if you can't but another Handler might.
 
         """
-        if (code in (301, 302, 303, 307) and req.method() in ("GET", "HEAD") or
-            code in (302, 303) and req.method() == "POST"):
-            # Strictly (according to RFC 2616), 302 in response to a POST
-            # MUST NOT cause a redirection without confirmation from the user
-           # (of urllib2, in this case).  In practice, essentially all clients
-            # do redirect in this case, so we do the same.
+        if code in (301, 302, 303) or (code == 307 and not req.has_data()):
+            # Strictly (according to RFC 2616), 301 or 302 in response to a
+            # POST MUST NOT cause a redirection without confirmation from the
+            # user (of urllib2, in this case).  In practice, essentially all
+            # clients do redirect in this case, so we do the same.
             return Request(newurl, headers=req.headers)
         else:
             raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
@@ -469,7 +462,7 @@
 
     inf_msg = "The HTTP server returned a redirect error that would" \
               "lead to an infinite loop.\n" \
-              "The last 302 error message was:\n"
+              "The last 30x error message was:\n"
 
 class ProxyHandler(BaseHandler):
     def __init__(self, proxies=None):

 	  	 

