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

........
  r59866 | raymond.hettinger | 2008-01-09 04:02:23 +0100 (Wed, 09 Jan 2008) | 1 line

  Syntax highlighting only works when >>> lines are accompanied by ... lines
........
  r59867 | fred.drake | 2008-01-09 04:11:28 +0100 (Wed, 09 Jan 2008) | 2 lines

  minor cleaning
........
  r59868 | raymond.hettinger | 2008-01-09 04:13:20 +0100 (Wed, 09 Jan 2008) | 1 line

  Fix typo
........
  r59869 | thomas.heller | 2008-01-09 12:19:19 +0100 (Wed, 09 Jan 2008) | 1 line

  Set the output file in the _ctypes Debug|x64 configuration.
........
  r59870 | andrew.kuchling | 2008-01-09 13:27:41 +0100 (Wed, 09 Jan 2008) | 1 line

  Related to patch #1114: fix another place where attr_t is assumed to be a long
........
  r59873 | christian.heimes | 2008-01-09 15:46:10 +0100 (Wed, 09 Jan 2008) | 1 line

  vs9to8 sync
........
  r59876 | christian.heimes | 2008-01-09 20:56:33 +0100 (Wed, 09 Jan 2008) | 1 line

  Fixed #1776. __import__() no longer imports modules by file name
........
  r59879 | thomas.heller | 2008-01-09 22:35:04 +0100 (Wed, 09 Jan 2008) | 6 lines

  Change amd64 buildbot scripts to use Visual Studio 2008, and
  to use the required versions of external sources.
  External sources are not yet built, so the build-step fails to
  built some targets.
........
  r59880 | thomas.heller | 2008-01-09 22:35:43 +0100 (Wed, 09 Jan 2008) | 6 lines

  Change amd64 buildbot scripts to use Visual Studio 2008, and
  to use the required versions of external sources.
  External sources are not yet built, so the build-step fails to
  built some targets.
........
diff --git a/Python/import.c b/Python/import.c
index 6500f23..f9d4246 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -2000,6 +2000,16 @@
 	Py_ssize_t buflen = 0;
 	PyObject *parent, *head, *next, *tail;
 
+	if (strchr(name, '/') != NULL
+#ifdef MS_WINDOWS
+	    || strchr(name, '\\') != NULL
+#endif
+		) {
+		PyErr_SetString(PyExc_ImportError,
+				"Import by filename is not supported.");
+		return NULL;
+	}
+
 	parent = get_parent(globals, buf, &buflen, level);
 	if (parent == NULL)
 		return NULL;