any unhandled char below ascii 32 will now be encoded as utf8 (\uXXXX)
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Tue, 2 Jan 2007 21:33:59 +0000 (21:33 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Tue, 2 Jan 2007 21:33:59 +0000 (21:33 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_1_0@6717 dcc99617-32d9-48b4-a31d-7c20da2025e4

OpenSRF/src/utils/utils.c

index 4a7e1b3..cdb8cab 100644 (file)
@@ -347,17 +347,9 @@ char* uescape( const char* string, int size, int full_escape ) {
                                                OSRF_BUFFER_ADD_CHAR(buf, '\\');
                                                break;
 
-                                       case 30: /* record separator */
-                                               OSRF_BUFFER_ADD(buf, "\\u001E");
-                                               break;
-
-                                       case 1: /* record separator */
-                                               OSRF_BUFFER_ADD(buf, "\\u0001");
-                                               break;
-
-
-                                       default:
-                                               OSRF_BUFFER_ADD_CHAR(buf, c);
+               default:
+                  if( c < 32 ) buffer_fadd(buf, "\\u%0.4x", c);
+                  else OSRF_BUFFER_ADD_CHAR(buf, c);
                                }
 
                        } else {