Format functions: change format specifier %t into %pS. Remove the _no_f_c formatting function variants.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12108 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/m_debuglog.c b/coregrind/m_debuglog.c
index ccd2ad9..7ad3f8c 100644
--- a/coregrind/m_debuglog.c
+++ b/coregrind/m_debuglog.c
@@ -721,12 +721,23 @@
                ret += myvprintf_int64(send, send_arg2, flags, 10, width, False,
                                       (ULong)(va_arg (vargs, UInt)));
             break;
-         case 'p': /* %p */
-            ret += 2;
-            send('0',send_arg2);
-            send('x',send_arg2);
-            ret += myvprintf_int64(send, send_arg2, flags, 16, width, True,
-                                   (ULong)((UWord)va_arg (vargs, void *)));
+         case 'p':
+            if (format[i+1] == 'S') {
+               i++;
+               /* %pS, like %s but escaping chars for XML safety */
+               /* Note: simplistic; ignores field width and flags */
+               char *str = va_arg (vargs, char *);
+               if (str == (char*) 0)
+                  str = "(null)";
+               ret += myvprintf_str_XML_simplistic(send, send_arg2, str);
+            } else {
+               /* %p */
+               ret += 2;
+               send('0',send_arg2);
+               send('x',send_arg2);
+               ret += myvprintf_int64(send, send_arg2, flags, 16, width, True,
+                                      (ULong)((UWord)va_arg (vargs, void *)));
+            }
             break;
          case 'x': /* %x */
          case 'X': /* %X */
@@ -754,13 +765,6 @@
                                  flags, width, str, format[i]=='S');
             break;
          }
-         case 't': { /* %t, like %s but escaping chars for XML safety */
-            /* Note: simplistic; ignores field width and flags */
-            char *str = va_arg (vargs, char *);
-            if (str == (char*) 0) str = "(null)";
-            ret += myvprintf_str_XML_simplistic(send, send_arg2, str);
-            break;
-         }
 
 //         case 'y': { /* %y - print symbol */
 //            Char buf[100];