| | @@ -1131,49 +1131,49 @@ |
| 1131 | 1131 | static void dftclSkip(DiffBuilder *p, unsigned int n, int isFinal){ |
| 1132 | 1132 | blob_appendf(p->pOut, "SKIP %u\n", n); |
| 1133 | 1133 | } |
| 1134 | 1134 | static void dftclCommon(DiffBuilder *p, const DLine *pLine){ |
| 1135 | 1135 | blob_appendf(p->pOut, "COM "); |
| 1136 | | - blob_append_string_literal(p->pOut, pLine->z, pLine->n); |
| 1136 | + blob_append_tcl_literal(p->pOut, pLine->z, pLine->n); |
| 1137 | 1137 | blob_append_char(p->pOut, '\n'); |
| 1138 | 1138 | } |
| 1139 | 1139 | static void dftclInsert(DiffBuilder *p, const DLine *pLine){ |
| 1140 | 1140 | blob_append(p->pOut, "INS ", -1); |
| 1141 | | - blob_append_string_literal(p->pOut, pLine->z, pLine->n); |
| 1141 | + blob_append_tcl_literal(p->pOut, pLine->z, pLine->n); |
| 1142 | 1142 | blob_append_char(p->pOut, '\n'); |
| 1143 | 1143 | } |
| 1144 | 1144 | static void dftclDelete(DiffBuilder *p, const DLine *pLine){ |
| 1145 | 1145 | blob_append(p->pOut, "DEL ", -1); |
| 1146 | | - blob_append_string_literal(p->pOut, pLine->z, pLine->n); |
| 1146 | + blob_append_tcl_literal(p->pOut, pLine->z, pLine->n); |
| 1147 | 1147 | blob_append_char(p->pOut, '\n'); |
| 1148 | 1148 | } |
| 1149 | 1149 | static void dftclReplace(DiffBuilder *p, const DLine *pX, const DLine *pY){ |
| 1150 | 1150 | blob_append(p->pOut, "EDIT ", -1); |
| 1151 | | - blob_append_string_literal(p->pOut, pX->z, pX->n); |
| 1151 | + blob_append_tcl_literal(p->pOut, pX->z, pX->n); |
| 1152 | 1152 | blob_append_char(p->pOut, ' '); |
| 1153 | | - blob_append_string_literal(p->pOut, pY->z, pY->n); |
| 1153 | + blob_append_tcl_literal(p->pOut, pY->z, pY->n); |
| 1154 | 1154 | blob_append_char(p->pOut, '\n'); |
| 1155 | 1155 | } |
| 1156 | 1156 | static void dftclEdit(DiffBuilder *p, const DLine *pX, const DLine *pY){ |
| 1157 | 1157 | int i, x; |
| 1158 | 1158 | ChangeSpan span; |
| 1159 | 1159 | blob_append(p->pOut, "EDIT", 4); |
| 1160 | 1160 | oneLineChange(pX, pY, &span); |
| 1161 | 1161 | for(i=x=0; i<span.n; i++){ |
| 1162 | 1162 | blob_append_char(p->pOut, ' '); |
| 1163 | | - blob_append_string_literal(p->pOut, pX->z + x, span.a[i].iStart1 - x); |
| 1163 | + blob_append_tcl_literal(p->pOut, pX->z + x, span.a[i].iStart1 - x); |
| 1164 | 1164 | x = span.a[i].iStart1; |
| 1165 | 1165 | blob_append_char(p->pOut, ' '); |
| 1166 | | - blob_append_string_literal(p->pOut, pX->z + x, span.a[i].iLen1); |
| 1166 | + blob_append_tcl_literal(p->pOut, pX->z + x, span.a[i].iLen1); |
| 1167 | 1167 | x += span.a[i].iLen1; |
| 1168 | 1168 | blob_append_char(p->pOut, ' '); |
| 1169 | | - blob_append_string_literal(p->pOut, |
| 1169 | + blob_append_tcl_literal(p->pOut, |
| 1170 | 1170 | pY->z + span.a[i].iStart2, span.a[i].iLen2); |
| 1171 | 1171 | } |
| 1172 | 1172 | if( x<pX->n ){ |
| 1173 | 1173 | blob_append_char(p->pOut, ' '); |
| 1174 | | - blob_append_string_literal(p->pOut, pX->z + x, pX->n - x); |
| 1174 | + blob_append_tcl_literal(p->pOut, pX->z + x, pX->n - x); |
| 1175 | 1175 | } |
| 1176 | 1176 | blob_append_char(p->pOut, '\n'); |
| 1177 | 1177 | } |
| 1178 | 1178 | static void dftclEnd(DiffBuilder *p){ |
| 1179 | 1179 | fossil_free(p); |
| | @@ -1215,47 +1215,47 @@ |
| 1215 | 1215 | static void dfjsonSkip(DiffBuilder *p, unsigned int n, int isFinal){ |
| 1216 | 1216 | blob_appendf(p->pOut, "1,%u,\n", n); |
| 1217 | 1217 | } |
| 1218 | 1218 | static void dfjsonCommon(DiffBuilder *p, const DLine *pLine){ |
| 1219 | 1219 | blob_append(p->pOut, "2,",2); |
| 1220 | | - blob_append_string_literal(p->pOut, pLine->z, (int)pLine->n); |
| 1220 | + blob_append_json_literal(p->pOut, pLine->z, (int)pLine->n); |
| 1221 | 1221 | blob_append(p->pOut, ",\n",2); |
| 1222 | 1222 | } |
| 1223 | 1223 | static void dfjsonInsert(DiffBuilder *p, const DLine *pLine){ |
| 1224 | 1224 | blob_append(p->pOut, "3,",2); |
| 1225 | | - blob_append_string_literal(p->pOut, pLine->z, (int)pLine->n); |
| 1225 | + blob_append_json_literal(p->pOut, pLine->z, (int)pLine->n); |
| 1226 | 1226 | blob_append(p->pOut, ",\n",2); |
| 1227 | 1227 | } |
| 1228 | 1228 | static void dfjsonDelete(DiffBuilder *p, const DLine *pLine){ |
| 1229 | 1229 | blob_append(p->pOut, "4,",2); |
| 1230 | | - blob_append_string_literal(p->pOut, pLine->z, (int)pLine->n); |
| 1230 | + blob_append_json_literal(p->pOut, pLine->z, (int)pLine->n); |
| 1231 | 1231 | blob_append(p->pOut, ",\n",2); |
| 1232 | 1232 | } |
| 1233 | 1233 | static void dfjsonReplace(DiffBuilder *p, const DLine *pX, const DLine *pY){ |
| 1234 | 1234 | blob_append(p->pOut, "5,[\"\",",-1); |
| 1235 | | - blob_append_string_literal(p->pOut, pX->z, (int)pX->n); |
| 1235 | + blob_append_json_literal(p->pOut, pX->z, (int)pX->n); |
| 1236 | 1236 | blob_append(p->pOut, ",",1); |
| 1237 | | - blob_append_string_literal(p->pOut, pY->z, (int)pY->n); |
| 1237 | + blob_append_json_literal(p->pOut, pY->z, (int)pY->n); |
| 1238 | 1238 | blob_append(p->pOut, ",\"\"],\n",-1); |
| 1239 | 1239 | } |
| 1240 | 1240 | static void dfjsonEdit(DiffBuilder *p, const DLine *pX, const DLine *pY){ |
| 1241 | 1241 | int i, x; |
| 1242 | 1242 | ChangeSpan span; |
| 1243 | 1243 | blob_append(p->pOut, "5,[", 3); |
| 1244 | 1244 | oneLineChange(pX, pY, &span); |
| 1245 | 1245 | for(i=x=0; i<span.n; i++){ |
| 1246 | | - blob_append_string_literal(p->pOut, pX->z + x, span.a[i].iStart1 - x); |
| 1246 | + blob_append_json_literal(p->pOut, pX->z + x, span.a[i].iStart1 - x); |
| 1247 | 1247 | x = span.a[i].iStart1; |
| 1248 | 1248 | blob_append_char(p->pOut, ','); |
| 1249 | | - blob_append_string_literal(p->pOut, pX->z + x, span.a[i].iLen1); |
| 1249 | + blob_append_json_literal(p->pOut, pX->z + x, span.a[i].iLen1); |
| 1250 | 1250 | x += span.a[i].iLen1; |
| 1251 | 1251 | blob_append_char(p->pOut, ','); |
| 1252 | | - blob_append_string_literal(p->pOut, |
| 1252 | + blob_append_json_literal(p->pOut, |
| 1253 | 1253 | pY->z + span.a[i].iStart2, span.a[i].iLen2); |
| 1254 | 1254 | } |
| 1255 | 1255 | blob_append_char(p->pOut, ','); |
| 1256 | | - blob_append_string_literal(p->pOut, pX->z + x, pX->n - x); |
| 1256 | + blob_append_json_literal(p->pOut, pX->z + x, pX->n - x); |
| 1257 | 1257 | blob_append(p->pOut, "],\n",3); |
| 1258 | 1258 | } |
| 1259 | 1259 | static void dfjsonEnd(DiffBuilder *p){ |
| 1260 | 1260 | blob_append(p->pOut, "0]", 2); |
| 1261 | 1261 | fossil_free(p); |
| 1262 | 1262 | |