SF patch #806246:  use basestring where possible
(Contributed by George Yoshida.)
diff --git a/Lib/doctest.py b/Lib/doctest.py
index cff0501..caac691 100644
--- a/Lib/doctest.py
+++ b/Lib/doctest.py
@@ -1187,7 +1187,7 @@
         module = sys._getframe(2).f_globals['__name__']
         module = sys.modules[module]
 
-    elif isinstance(module, (str, unicode)):
+    elif isinstance(module, basestring):
         # The ["*"] at the end is a mostly meaningless incantation with
         # a crucial property:  if, e.g., module is 'a.b.c', it convinces
         # __import__ to return c instead of a.
diff --git a/Lib/pkgutil.py b/Lib/pkgutil.py
index 4237371..fbd708a 100644
--- a/Lib/pkgutil.py
+++ b/Lib/pkgutil.py
@@ -50,7 +50,7 @@
     path = path[:] # Start with a copy of the existing path
 
     for dir in sys.path:
-        if not isinstance(dir, (str, unicode)) or not os.path.isdir(dir):
+        if not isinstance(dir, basestring) or not os.path.isdir(dir):
             continue
         subdir = os.path.join(dir, pname)
         # XXX This may still add duplicate entries to path on
diff --git a/Lib/test/test_textwrap.py b/Lib/test/test_textwrap.py
index a011168..9b8c58f 100644
--- a/Lib/test/test_textwrap.py
+++ b/Lib/test/test_textwrap.py
@@ -23,7 +23,7 @@
             for i in range(len(textin)):
                 result.append("  %d: %r" % (i, textin[i]))
             result = '\n'.join(result)
-        elif isinstance(textin, (str, unicode)):
+        elif isinstance(textin, basestring):
             result = "  %s\n" % repr(textin)
         return result