Guido has Spoken.  Restore strop.replace()'s treatment of a 0 count as
meaning infinity -- but at least warn about it in the code!  I pissed
away a couple hours on this today, and don't wish the same on the next
in line.
Bugfix candidate.
diff --git a/Modules/stropmodule.c b/Modules/stropmodule.c
index aa9cdc7..312e0dc 100644
--- a/Modules/stropmodule.c
+++ b/Modules/stropmodule.c
@@ -1132,6 +1132,12 @@
 		PyErr_SetString(PyExc_ValueError, "empty pattern string");
 		return NULL;
 	}
+	/* CAUTION:  strop treats a replace count of 0 as infinity, unlke
+	 * current (2.1) string.py and string methods.  Preserve this for
+	 * ... well, hard to say for what <wink>.
+	 */
+	if (count == 0)
+		count = -1;
 	new_s = mymemreplace(str,len,pat,pat_len,sub,sub_len,count,&out_len);
 	if (new_s == NULL) {
 		PyErr_NoMemory();