From 65b49f1a297dc23f6bb98d4eecac50e720cedf0a Mon Sep 17 00:00:00 2001 From: Ronald Barendse Date: Thu, 3 Oct 2019 15:06:16 +0200 Subject: [PATCH] Fixed adding/updating UmbracoMapper constructors --- src/Umbraco.Core/Mapping/UmbracoMapper.cs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/Umbraco.Core/Mapping/UmbracoMapper.cs b/src/Umbraco.Core/Mapping/UmbracoMapper.cs index e41a40e3d9..21164e8de9 100644 --- a/src/Umbraco.Core/Mapping/UmbracoMapper.cs +++ b/src/Umbraco.Core/Mapping/UmbracoMapper.cs @@ -343,16 +343,19 @@ namespace Umbraco.Core.Mapping if (ctor == null) return null; - if (_ctors.ContainsKey(sourceType)) - { + _ctors.AddOrUpdate(sourceType, sourceCtor, (k, v) => { + // Add missing constructors foreach (var c in sourceCtor) { - if (!_ctors[sourceType].TryGetValue(c.Key, out _)) - _ctors[sourceType].Add(c.Key, c.Value); - } - } - else - _ctors[sourceType] = sourceCtor; + if (!v.ContainsKey(c.Key)) + { + v.Add(c.Key, c.Value); + } + } + + return v; + }); + return ctor; }