Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
畅游知识海洋
json
提交
33f5e749
J
json
项目概览
畅游知识海洋
/
json
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
json
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
33f5e749
编写于
1月 09, 2015
作者:
N
Niels
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
minor syntax adjustments
上级
661a44d1
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
17 addition
and
9 deletion
+17
-9
src/json.cc
src/json.cc
+17
-9
未找到文件。
src/json.cc
浏览文件 @
33f5e749
...
...
@@ -2049,13 +2049,16 @@ std::string json::parser::parseString()
bool
evenAmountOfBackslashes
=
true
;
// iterate with pos_ over the whole string
for
(;
pos_
<
buffer_
.
size
();
pos_
++
)
{
for
(;
pos_
<
buffer_
.
size
();
pos_
++
)
{
char
currentChar
=
buffer_
[
pos_
];
// currentChar is a quote, so we might have found the end of the string
if
(
currentChar
==
'"'
)
{
if
(
currentChar
==
'"'
)
{
// but only if the amount of backslashes before that quote is even
if
(
evenAmountOfBackslashes
)
{
if
(
evenAmountOfBackslashes
)
{
const
auto
stringLength
=
pos_
-
startPos
;
// set pos_ behind the trailing quote
...
...
@@ -2068,13 +2071,18 @@ std::string json::parser::parseString()
}
}
// remember if we have an even amount of backslashes before the current character
if
(
currentChar
==
'\\'
)
{
// remember if we have an even amount of backslashes before the current
// character
if
(
currentChar
==
'\\'
)
{
// jump between even/uneven for each backslash we encounter
evenAmountOfBackslashes
=
!
evenAmountOfBackslashes
;
}
else
{
// zero backslashes are also an even number, so as soon as we encounter a non-backslash
// the chain of backslashes breaks and we start again from zero
evenAmountOfBackslashes
=
not
evenAmountOfBackslashes
;
}
else
{
// zero backslashes are also an even number, so as soon as we
// encounter a non-backslash the chain of backslashes breaks and
// we start again from zero
evenAmountOfBackslashes
=
true
;
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录