@@ -341,12 +341,10 @@ protected Collection<Object> _deserializeFromArray(JsonParser p, Deserialization
341341 // [databind#631]: Assign current value, to be accessible by custom serializers
342342 p .assignCurrentValue (result );
343343
344- JsonDeserializer <Object > valueDes = _valueDeserializer ;
345344 // Let's offline handling of values with Object Ids (simplifies code here)
346- if (valueDes .getObjectIdReader () != null ) {
345+ if (_valueDeserializer .getObjectIdReader () != null ) {
347346 return _deserializeWithObjectId (p , ctxt , result );
348347 }
349- final TypeDeserializer typeDeser = _valueTypeDeserializer ;
350348 JsonToken t ;
351349 while ((t = p .nextToken ()) != JsonToken .END_ARRAY ) {
352350 try {
@@ -356,10 +354,10 @@ protected Collection<Object> _deserializeFromArray(JsonParser p, Deserialization
356354 continue ;
357355 }
358356 value = _nullProvider .getNullValue (ctxt );
359- } else if (typeDeser == null ) {
360- value = valueDes .deserialize (p , ctxt );
357+ } else if (_valueTypeDeserializer == null ) {
358+ value = _valueDeserializer .deserialize (p , ctxt );
361359 } else {
362- value = valueDes .deserializeWithType (p , ctxt , typeDeser );
360+ value = _valueDeserializer .deserializeWithType (p , ctxt , _valueTypeDeserializer );
363361 }
364362 if (value == null ) {
365363 _tryToAddNull (p , ctxt , result );
@@ -400,9 +398,6 @@ protected final Collection<Object> handleNonArray(JsonParser p, DeserializationC
400398 if (!canWrap ) {
401399 return (Collection <Object >) ctxt .handleUnexpectedToken (_containerType , p );
402400 }
403- JsonDeserializer <Object > valueDes = _valueDeserializer ;
404- final TypeDeserializer typeDeser = _valueTypeDeserializer ;
405-
406401 Object value ;
407402
408403 try {
@@ -412,11 +407,12 @@ protected final Collection<Object> handleNonArray(JsonParser p, DeserializationC
412407 return result ;
413408 }
414409 value = _nullProvider .getNullValue (ctxt );
415- } else if (typeDeser == null ) {
416- value = valueDes .deserialize (p , ctxt );
410+ } else if (_valueTypeDeserializer == null ) {
411+ value = _valueDeserializer .deserialize (p , ctxt );
417412 } else {
418- value = valueDes .deserializeWithType (p , ctxt , typeDeser );
413+ value = _valueDeserializer .deserializeWithType (p , ctxt , _valueTypeDeserializer );
419414 }
415+ // _skipNullValues is checked by _tryToAddNull.
420416 if (value == null ) {
421417 _tryToAddNull (p , ctxt , result );
422418 return result ;
@@ -444,8 +440,6 @@ protected Collection<Object> _deserializeWithObjectId(JsonParser p, Deserializat
444440 // [databind#631]: Assign current value, to be accessible by custom serializers
445441 p .assignCurrentValue (result );
446442
447- final JsonDeserializer <Object > valueDes = _valueDeserializer ;
448- final TypeDeserializer typeDeser = _valueTypeDeserializer ;
449443 CollectionReferringAccumulator referringAccumulator =
450444 new CollectionReferringAccumulator (_containerType .getContentType ().getRawClass (), result );
451445
@@ -458,10 +452,10 @@ protected Collection<Object> _deserializeWithObjectId(JsonParser p, Deserializat
458452 continue ;
459453 }
460454 value = _nullProvider .getNullValue (ctxt );
461- } else if (typeDeser == null ) {
462- value = valueDes .deserialize (p , ctxt );
455+ } else if (_valueTypeDeserializer == null ) {
456+ value = _valueDeserializer .deserialize (p , ctxt );
463457 } else {
464- value = valueDes .deserializeWithType (p , ctxt , typeDeser );
458+ value = _valueDeserializer .deserializeWithType (p , ctxt , _valueTypeDeserializer );
465459 }
466460 if (value == null && _skipNullValues ) {
467461 continue ;
0 commit comments