Skip to content

Commit 82fb084

Browse files
committed
fixed null if statement violations
1 parent c6daca2 commit 82fb084

File tree

4 files changed

+48
-46
lines changed

4 files changed

+48
-46
lines changed

src/main/java/com/alibaba/fastjson/JSONReader.java

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -94,27 +94,27 @@ private void endStructure() {
9494
context = context.getParent();
9595

9696
if (context == null) {
97-
// skip
98-
} else {
99-
final int state = context.getState();
100-
int newState = -1;
101-
switch (state) {
102-
case PropertyKey:
103-
newState = PropertyValue;
104-
break;
105-
case StartArray:
106-
newState = ArrayValue;
107-
break;
108-
case PropertyValue:
109-
case StartObject:
110-
newState = PropertyKey;
111-
break;
112-
default:
113-
break;
114-
}
115-
if (newState != -1) {
116-
context.setState(newState);
117-
}
97+
return;
98+
}
99+
100+
final int state = context.getState();
101+
int newState = -1;
102+
switch (state) {
103+
case PropertyKey:
104+
newState = PropertyValue;
105+
break;
106+
case StartArray:
107+
newState = ArrayValue;
108+
break;
109+
case PropertyValue:
110+
case StartObject:
111+
newState = PropertyKey;
112+
break;
113+
default:
114+
break;
115+
}
116+
if (newState != -1) {
117+
context.setState(newState);
118118
}
119119
}
120120

src/main/java/com/alibaba/fastjson/JSONWriter.java

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -98,25 +98,25 @@ private void endStructure() {
9898
context = context.getParent();
9999

100100
if (context == null) {
101-
// skip
102-
} else {
103-
final int state = context.getState();
104-
int newState = -1;
105-
switch (state) {
106-
case PropertyKey:
107-
newState = PropertyValue;
108-
break;
109-
case StartArray:
110-
newState = ArrayValue;
111-
break;
112-
case ArrayValue:
113-
break;
114-
default:
115-
break;
116-
}
117-
if (newState != -1) {
118-
context.setState(newState);
119-
}
101+
return;
102+
}
103+
104+
final int state = context.getState();
105+
int newState = -1;
106+
switch (state) {
107+
case PropertyKey:
108+
newState = PropertyValue;
109+
break;
110+
case StartArray:
111+
newState = ArrayValue;
112+
break;
113+
case ArrayValue:
114+
break;
115+
default:
116+
break;
117+
}
118+
if (newState != -1) {
119+
context.setState(newState);
120120
}
121121
}
122122

@@ -143,7 +143,7 @@ private void afterWriter() {
143143
if (context == null) {
144144
return;
145145
}
146-
146+
147147
final int state = context.getState();
148148
int newState = -1;
149149
switch (state) {

src/main/java/com/alibaba/fastjson/parser/deserializer/ASMDeserializerFactory.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1124,8 +1124,10 @@ private void _init(ClassWriter cw, Context context) {
11241124
}
11251125

11261126
if (fieldClass.isEnum()) {
1127+
return;
1128+
}
11271129

1128-
} else if (Collection.class.isAssignableFrom(fieldClass)) {
1130+
if (Collection.class.isAssignableFrom(fieldClass)) {
11291131
FieldVisitor fw = cw.visitField(ACC_PUBLIC, fieldInfo.getName() + "_asm_list_item_deser__",
11301132
getDesc(ObjectDeserializer.class));
11311133
fw.visitEnd();

src/main/java/com/alibaba/fastjson/parser/deserializer/StackTraceElementDeserializer.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -90,15 +90,15 @@ public <T> T deserialze(DefaultJSONParser parser, Type type, Object fieldName) {
9090
throw new JSONException("syntax error");
9191
}
9292
} else if (key == JSON.DEFAULT_TYPE_KEY) {
93-
if (lexer.token() == JSONToken.NULL) {
94-
// skip
95-
} else if (lexer.token() == JSONToken.LITERAL_STRING) {
93+
if (lexer.token() == JSONToken.LITERAL_STRING) {
9694
String elementType = lexer.stringVal();
9795
if (!elementType.equals("java.lang.StackTraceElement")) {
9896
throw new JSONException("syntax error : " + elementType);
9997
}
10098
} else {
101-
throw new JSONException("syntax error");
99+
if (lexer.token() != JSONToken.NULL) {
100+
throw new JSONException("syntax error");
101+
}
102102
}
103103
} else {
104104
throw new JSONException("syntax error : " + key);

0 commit comments

Comments
 (0)