@@ -165,34 +165,35 @@ protected final Object _deserializeOther(JsonParser p, DeserializationContext ct
165
165
JsonToken t ) throws IOException
166
166
{
167
167
// and then others, generally requiring use of @JsonCreator
168
- switch (t ) {
169
- case VALUE_STRING :
170
- return deserializeFromString (p , ctxt );
171
- case VALUE_NUMBER_INT :
172
- return deserializeFromNumber (p , ctxt );
173
- case VALUE_NUMBER_FLOAT :
174
- return deserializeFromDouble (p , ctxt );
175
- case VALUE_EMBEDDED_OBJECT :
176
- return deserializeFromEmbedded (p , ctxt );
177
- case VALUE_TRUE :
178
- case VALUE_FALSE :
179
- return deserializeFromBoolean (p , ctxt );
180
-
181
- case VALUE_NULL :
182
- return deserializeFromNull (p , ctxt );
183
- case START_ARRAY :
184
- // these only work if there's a (delegating) creator...
185
- return deserializeFromArray (p , ctxt );
186
- case FIELD_NAME :
187
- case END_OBJECT : // added to resolve [JACKSON-319], possible related issues
188
- if (_vanillaProcessing ) {
189
- return vanillaDeserialize (p , ctxt , t );
190
- }
191
- if (_objectIdReader != null ) {
192
- return deserializeWithObjectId (p , ctxt );
168
+ if (t != null ) {
169
+ switch (t ) {
170
+ case VALUE_STRING :
171
+ return deserializeFromString (p , ctxt );
172
+ case VALUE_NUMBER_INT :
173
+ return deserializeFromNumber (p , ctxt );
174
+ case VALUE_NUMBER_FLOAT :
175
+ return deserializeFromDouble (p , ctxt );
176
+ case VALUE_EMBEDDED_OBJECT :
177
+ return deserializeFromEmbedded (p , ctxt );
178
+ case VALUE_TRUE :
179
+ case VALUE_FALSE :
180
+ return deserializeFromBoolean (p , ctxt );
181
+ case VALUE_NULL :
182
+ return deserializeFromNull (p , ctxt );
183
+ case START_ARRAY :
184
+ // these only work if there's a (delegating) creator...
185
+ return deserializeFromArray (p , ctxt );
186
+ case FIELD_NAME :
187
+ case END_OBJECT : // added to resolve [JACKSON-319], possible related issues
188
+ if (_vanillaProcessing ) {
189
+ return vanillaDeserialize (p , ctxt , t );
190
+ }
191
+ if (_objectIdReader != null ) {
192
+ return deserializeWithObjectId (p , ctxt );
193
+ }
194
+ return deserializeFromObject (p , ctxt );
195
+ default :
193
196
}
194
- return deserializeFromObject (p , ctxt );
195
- default :
196
197
}
197
198
return ctxt .handleUnexpectedToken (handledType (), p );
198
199
}
0 commit comments