| @@ -42,9 +42,12 @@ | ||
| 42 | 42 | case 'map': |
| 43 | 43 | $values = $shape->getValue(); |
| 44 | 44 | $target = []; |
| 45 | 45 | foreach ($value as $k => $v) { |
| 46 | - $target[$k] = $this->parse($values, $v); | |
| 46 | + // null map values should not be deserialized | |
| 47 | + if (!\is_null($v)) { | |
| 48 | + $target[$k] = $this->parse($values, $v); | |
| 49 | + } | |
| 47 | 50 | } |
| 48 | 51 | return $target; |
| 49 | 52 | case 'timestamp': |
| 50 | 53 | return DateTimeResult::fromTimestamp($value, !empty($shape['timestampFormat']) ? $shape['timestampFormat'] : null); |