Code by Inyeol Lee, submitted to SF bug 595350, to implement
the string/unicode method .replace() with a zero-lengt first argument.
Inyeol contributed tests for this too.
diff --git a/Lib/test/string_tests.py b/Lib/test/string_tests.py
index a071f20..f2d6853 100644
--- a/Lib/test/string_tests.py
+++ b/Lib/test/string_tests.py
@@ -202,6 +202,10 @@
     test('replace', 'one!two!three!', 'one@two@three@', '!', '@')
     test('replace', 'one!two!three!', 'one!two!three!', 'x', '@')
     test('replace', 'one!two!three!', 'one!two!three!', 'x', '@', 2)
+    test('replace', 'abc', '-a-b-c-', '', '-')
+    test('replace', 'abc', '-a-b-c', '', '-', 3)
+    test('replace', 'abc', 'abc', '', '-', 0)
+    test('replace', '', '', '', '')
     # Next three for SF bug 422088: [OSF1 alpha] string.replace(); died with
     # MemoryError due to empty result (platform malloc issue when requesting
     # 0 bytes).