Merged revisions 75935 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r75935 | lars.gustaebel | 2009-10-29 10:15:00 +0100 (Thu, 29 Oct 2009) | 3 lines

  Issue #4750: Store the basename of the original filename in
  the gzip FNAME header as required by RFC 1952.
........
diff --git a/Lib/gzip.py b/Lib/gzip.py
index 983e0ce..08f9da5 100644
--- a/Lib/gzip.py
+++ b/Lib/gzip.py
@@ -5,7 +5,7 @@
 
 # based on Andrew Kuchling's minigzip.py distributed with the zlib module
 
-import struct, sys, time
+import struct, sys, time, os
 import zlib
 import builtins
 
@@ -158,7 +158,8 @@
         try:
             # RFC 1952 requires the FNAME field to be Latin-1. Do not
             # include filenames that cannot be represented that way.
-            fname = self.name.encode('latin-1')
+            fname = os.path.basename(self.name)
+            fname = fname.encode('latin-1')
             if fname.endswith(b'.gz'):
                 fname = fname[:-3]
         except UnicodeEncodeError: