diff -r 34881ee3eec5 Lib/shutil.py --- a/Lib/shutil.py Mon Jun 16 11:14:47 2014 -0500 +++ b/Lib/shutil.py Mon Jun 16 17:23:43 2014 -0300 @@ -320,7 +320,10 @@ if not os.path.exists(linkto) and ignore_dangling_symlinks: continue # otherwise let the copy occurs. copy2 will raise an error - copy_function(srcname, dstname) + if os.path.isdir(srcname): + copytree(srcname, dstname, symlinks, ignore, copy_function) + else: + copy_function(srcname, dstname) elif os.path.isdir(srcname): copytree(srcname, dstname, symlinks, ignore, copy_function) else: