Change the form of the name given to each page of the PDF from "page.%d" to
"page.%dx"; this works around an acroread bug that causes targets not to be
recognized if their name is a prefix of another target in the file.
diff --git a/Doc/texinputs/python.sty b/Doc/texinputs/python.sty
index fc121b8..4c38774 100644
--- a/Doc/texinputs/python.sty
+++ b/Doc/texinputs/python.sty
@@ -62,7 +62,7 @@
   }
   \def\@hyperfixhead{%
    \let\H@old@thehead\@thehead
-       \gdef\@foo{\if@doing@page@targets\pdfdest name{page.\thepage} fit\fi}%
+       \gdef\@foo{\if@doing@page@targets\pdfdest name{page.\thepage x} fit\fi}%
      \expandafter\ifx\expandafter\@empty\H@old@thehead
        \def\H@old@thehead{\hfil}\fi
     \def\@thehead{\@foo\relax\H@old@thehead}%
diff --git a/Doc/tools/toc2bkm.py b/Doc/tools/toc2bkm.py
index 6ccda1f..0d22fb1 100755
--- a/Doc/tools/toc2bkm.py
+++ b/Doc/tools/toc2bkm.py
@@ -101,7 +101,7 @@
 
 def write_toc_entry(entry, fp, layer):
     stype, snum, title, pageno, toc = entry
-    s = "\\pdfoutline goto name{page.%d}" % pageno
+    s = "\\pdfoutline goto name{page.%dx}" % pageno
     if toc:
 	s = "%s count -%d" % (s, len(toc))
     if snum: