From 1ea96290fb3176d944716b8218eb9b50b2df4e38 Mon Sep 17 00:00:00 2001 From: enricosada Date: Wed, 13 May 2015 10:17:38 +0200 Subject: [PATCH] fix syncroot --- src/fsharp/FSharp.Core/fslib-extra-pervasives.fs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/fsharp/FSharp.Core/fslib-extra-pervasives.fs b/src/fsharp/FSharp.Core/fslib-extra-pervasives.fs index 640d72ba626..eed87c4ca87 100644 --- a/src/fsharp/FSharp.Core/fslib-extra-pervasives.fs +++ b/src/fsharp/FSharp.Core/fslib-extra-pervasives.fs @@ -121,7 +121,7 @@ module ExtraTopLevelOperators = arr.SetValue(k.Value,i+n) n <- n + 1 member s.IsSynchronized = true - member s.SyncRoot = s :> obj + member s.SyncRoot = (t :> System.Collections.ICollection).SyncRoot member s.Count = keys.Count interface System.Collections.IEnumerable with member s.GetEnumerator() = ((keys |> Seq.map (fun v -> v.Value)) :> System.Collections.IEnumerable).GetEnumerator() } @@ -134,12 +134,12 @@ module ExtraTopLevelOperators = arr.SetValue(k,i+n) n <- n + 1 member s.IsSynchronized = true - member s.SyncRoot = s :> obj + member s.SyncRoot = (t :> System.Collections.ICollection).SyncRoot member s.Count = d.Values.Count interface System.Collections.IEnumerable with member s.GetEnumerator() = (d.Values :> System.Collections.IEnumerable).GetEnumerator() } member s.Count = c.Count - member s.SyncRoot = s :> obj + member s.SyncRoot = (t :> System.Collections.ICollection).SyncRoot member s.Add(k,v) = raise (NotSupportedException(SR.GetString(SR.thisValueCannotBeMutated))) member s.Contains(k) = d.ContainsKey(RuntimeHelpers.StructBox(k :?> 'Key)) member s.GetEnumerator() =