diff Objects/stringobject.c @ 42095:f65672b8e7d1

Patch by Ron Adam to make repr(str8(...)) return something looking like s'...' instead of '...', allowing it to be distinguished from unicode strings. This doesn't roundtrip -- for now, that's intentional, as the goal is to rip these out rather than to make it a feature, and making them stand out (breaking 8 more tests) helps us track them down so we can rip them out.
author Guido van Rossum <guido@python.org>
date Fri, 15 Jun 2007 00:00:12 +0000
parents 229c28cb9afb
children 0dc62647aff0
line wrap: on
line diff
--- a/Objects/stringobject.c	Thu Jun 14 03:27:55 2007 +0000
+++ b/Objects/stringobject.c	Fri Jun 15 00:00:12 2007 +0000
@@ -835,7 +835,7 @@
 	static const char *hexdigits = "0123456789abcdef";
 	register PyStringObject* op = (PyStringObject*) obj;
 	Py_ssize_t length = PyString_GET_SIZE(op);
-	size_t newsize = 2 + 4 * op->ob_size;
+	size_t newsize = 3 + 4 * op->ob_size;
 	PyObject *v;
 	if (newsize > PY_SSIZE_T_MAX || newsize / 4 != op->ob_size) {
 		PyErr_SetString(PyExc_OverflowError,
@@ -867,7 +867,7 @@
 			;
 		}
 
-		*p++ = quote;
+		*p++ = 's', *p++ = quote;
 		for (i = 0; i < op->ob_size; i++) {
 			/* There's at least enough room for a hex escape
 			   and a closing quote. */