diff --git a/Lib/distutils/filelist.py b/Lib/distutils/filelist.py
index 58a2bfb..06a8da9 100644
--- a/Lib/distutils/filelist.py
+++ b/Lib/distutils/filelist.py
@@ -312,7 +312,9 @@
         pattern_re = ''
 
     if prefix is not None:
-        prefix_re = (glob_to_re(prefix))[0:-1] # ditch trailing $
+        # ditch end of pattern character
+        empty_pattern = glob_to_re('')
+        prefix_re = (glob_to_re(prefix))[:-len(empty_pattern)]
         pattern_re = "^" + os.path.join(prefix_re, ".*" + pattern_re)
     else:                               # no prefix -- respect anchor flag
         if anchor:
diff --git a/Lib/distutils/tests/test_filelist.py b/Lib/distutils/tests/test_filelist.py
index 86db557..1faccfa 100644
--- a/Lib/distutils/tests/test_filelist.py
+++ b/Lib/distutils/tests/test_filelist.py
@@ -6,15 +6,15 @@
 
     def test_glob_to_re(self):
         # simple cases
-        self.assertEquals(glob_to_re('foo*'), 'foo[^/]*$')
-        self.assertEquals(glob_to_re('foo?'), 'foo[^/]$')
-        self.assertEquals(glob_to_re('foo??'), 'foo[^/][^/]$')
+        self.assertEquals(glob_to_re('foo*'), 'foo[^/]*\\Z(?ms)')
+        self.assertEquals(glob_to_re('foo?'), 'foo[^/]\\Z(?ms)')
+        self.assertEquals(glob_to_re('foo??'), 'foo[^/][^/]\\Z(?ms)')
 
         # special cases
-        self.assertEquals(glob_to_re(r'foo\\*'), r'foo\\\\[^/]*$')
-        self.assertEquals(glob_to_re(r'foo\\\*'), r'foo\\\\\\[^/]*$')
-        self.assertEquals(glob_to_re('foo????'), r'foo[^/][^/][^/][^/]$')
-        self.assertEquals(glob_to_re(r'foo\\??'), r'foo\\\\[^/][^/]$')
+        self.assertEquals(glob_to_re(r'foo\\*'), r'foo\\\\[^/]*\Z(?ms)')
+        self.assertEquals(glob_to_re(r'foo\\\*'), r'foo\\\\\\[^/]*\Z(?ms)')
+        self.assertEquals(glob_to_re('foo????'), r'foo[^/][^/][^/][^/]\Z(?ms)')
+        self.assertEquals(glob_to_re(r'foo\\??'), r'foo\\\\[^/][^/]\Z(?ms)')
 
 def test_suite():
     return unittest.makeSuite(FileListTestCase)
