diff options
author | Olivier Bertrand <bertrandop@gmail.com> | 2015-01-30 10:57:00 +0100 |
---|---|---|
committer | Olivier Bertrand <bertrandop@gmail.com> | 2015-01-30 10:57:00 +0100 |
commit | fd1ca70bb3710ae280bd11b3650820dd62002419 (patch) | |
tree | 4bf2d015e61dc83733c146a7cca4025ead296bde /storage/connect/json.cpp | |
parent | 9a2dc7dfed6b56c529b2de865a15929bee2eceaf (diff) | |
download | mariadb-git-fd1ca70bb3710ae280bd11b3650820dd62002419.tar.gz |
- Enhance JSON tables handling.
modified:
storage/connect/json.cpp
storage/connect/json.h
storage/connect/mysql-test/connect/r/json.result
storage/connect/mysql-test/connect/t/json.test
storage/connect/tabjson.cpp
storage/connect/tabjson.h
- Avoid crash when a partition table name pattern is ill formed
(such as using place holder %i instead of %s)
modified:
storage/connect/ha_connect.cc
Diffstat (limited to 'storage/connect/json.cpp')
-rw-r--r-- | storage/connect/json.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/storage/connect/json.cpp b/storage/connect/json.cpp index c49678769b7..0d15c8eed21 100644 --- a/storage/connect/json.cpp +++ b/storage/connect/json.cpp @@ -576,9 +576,9 @@ bool SerializeObject(JOUT *js, PJOB jobp) else if (js->WriteChr(','))
return true;
- if (js->WriteChr('\"') ||
+ if (js->WriteChr('"') ||
js->WriteStr(pair->Key) ||
- js->WriteChr('\"') ||
+ js->WriteChr('"') ||
js->WriteChr(':') ||
SerializeValue(js, pair->Val))
return true;
@@ -725,13 +725,13 @@ bool JOUTFILE::Escape(const char *s) for (unsigned int i = 0; i < strlen(s); i++)
switch (s[i]) {
+ case '"': fputs("\\\"", Stream); break;
+ case '\\': fputs("\\\\", Stream); break;
case '\t': fputs("\\t", Stream); break;
case '\n': fputs("\\n", Stream); break;
case '\r': fputs("\\r", Stream); break;
case '\b': fputs("\\b", Stream); break;
case '\f': fputs("\\f", Stream); break;
- case '\\': fputs("\\\\", Stream); break;
- case '"': fputs("\\\"", Stream); break;
default:
fputc(s[i], Stream);
break;
|