From 15bdb7a527ed4bd177e03463cc937ef41a5b3f1f Mon Sep 17 00:00:00 2001 From: "Xamarin Public Jenkins (auto-signing)" Date: Wed, 25 Sep 2019 09:31:28 +0000 Subject: [PATCH] Imported Upstream version 6.6.0.97 Former-commit-id: 36b6262d38adef7275aee46c9258ae34f9e3fb39 --- config.h.in | 2 +- configure.REMOVED.git-id | 2 +- configure.ac.REMOVED.git-id | 2 +- .../profiles/net_4_x/Mono.Debugger.Soft.cs | 1 + mcs/build/common/Consts.cs | 2 +- .../Mono.Debugger.Soft/Connection.cs | 13 +- .../ExceptionEventRequest.cs | 8 +- .../Mono.Debugger.Soft/VirtualMachine.cs | 7 + .../Mono.Debugger.Soft/Test/dtest-app.cs | 57 +++++++ .../Test/dtest.cs.REMOVED.git-id | 2 +- .../XmlSerializationReaderInterpreter.cs | 15 +- .../XmlTypeMapping.cs | 24 +-- .../DeserializeTests.cs | 49 ++++-- .../XmlSerializerTestClasses.cs | 161 +++--------------- .../Mono.Security.dll.REMOVED.git-id | 2 +- .../System.Configuration.dll.REMOVED.git-id | 2 +- .../System.Core.dll.REMOVED.git-id | 2 +- .../System.IO.Compression.dll.REMOVED.git-id | 2 +- .../System.Numerics.dll.REMOVED.git-id | 2 +- .../System.Xml.dll.REMOVED.git-id | 2 +- .../mscorlib.dll.REMOVED.git-id | 2 +- .../Mono.Security.dll.REMOVED.git-id | 2 +- .../System.Configuration.dll.REMOVED.git-id | 2 +- .../System.Core.dll.REMOVED.git-id | 2 +- .../System.IO.Compression.dll.REMOVED.git-id | 2 +- .../System.Numerics.dll.REMOVED.git-id | 2 +- .../System.Xml.dll.REMOVED.git-id | 2 +- .../mcs.exe.REMOVED.git-id | 2 +- .../mscorlib.dll.REMOVED.git-id | 2 +- .../Mono.Security.dll.REMOVED.git-id | 2 +- .../System.Configuration.dll.REMOVED.git-id | 2 +- .../System.Core.dll.REMOVED.git-id | 2 +- .../System.IO.Compression.dll.REMOVED.git-id | 2 +- .../System.Numerics.dll.REMOVED.git-id | 2 +- .../System.Xml.dll.REMOVED.git-id | 2 +- .../mcs.exe.REMOVED.git-id | 2 +- .../mscorlib.dll.REMOVED.git-id | 2 +- .../Mono.Security.dll.REMOVED.git-id | 2 +- .../System.Configuration.dll.REMOVED.git-id | 2 +- .../System.Core.dll.REMOVED.git-id | 2 +- .../System.IO.Compression.dll.REMOVED.git-id | 2 +- .../System.Numerics.dll.REMOVED.git-id | 2 +- .../System.Xml.dll.REMOVED.git-id | 2 +- .../mcs.exe.REMOVED.git-id | 2 +- .../mscorlib.dll.REMOVED.git-id | 2 +- mono/mini/debugger-agent.c.REMOVED.git-id | 2 +- mono/mini/debugger-engine.c | 4 +- mono/mini/debugger-engine.h | 2 +- mono/mini/mini-exceptions.c.REMOVED.git-id | 2 +- mono/mini/version.h | 2 +- mono/unit-tests/Makefile.in | 4 +- mono/utils/mono-threads.c | 6 + msvc/Makefile.in | 2 +- po/mcs/de.gmo | Bin 5406 -> 5406 bytes po/mcs/de.po.REMOVED.git-id | 2 +- po/mcs/es.gmo | Bin 16329 -> 16329 bytes po/mcs/es.po.REMOVED.git-id | 2 +- po/mcs/ja.gmo | Bin 20863 -> 20863 bytes po/mcs/ja.po.REMOVED.git-id | 2 +- po/mcs/mcs.pot | 4 +- po/mcs/pt_BR.gmo | Bin 72806 -> 72806 bytes po/mcs/pt_BR.po.REMOVED.git-id | 2 +- runtime/Makefile.am | 11 +- runtime/Makefile.in | 41 ++++- runtime/bin/mono-hang-watchdog.in | 3 + runtime/mkinstalldirs | 101 ----------- 66 files changed, 244 insertions(+), 355 deletions(-) create mode 100644 runtime/bin/mono-hang-watchdog.in delete mode 100755 runtime/mkinstalldirs diff --git a/config.h.in b/config.h.in index 9c61667ce4..90e0c91c63 100644 --- a/config.h.in +++ b/config.h.in @@ -972,7 +972,7 @@ /* struct statvfs.f_fstypename */ #undef HAVE_STATVFS_FSTYPENAME -/* struct stat.st_birthtime */ +/* struct stat.st_birthtimespec */ #undef HAVE_STAT_BIRTHTIME /* struct stat.st_atimensec */ diff --git a/configure.REMOVED.git-id b/configure.REMOVED.git-id index 47cfa0c2c4..fccb495688 100644 --- a/configure.REMOVED.git-id +++ b/configure.REMOVED.git-id @@ -1 +1 @@ -7926a792648f1baf888528635a4c8e86e3999cc8 \ No newline at end of file +c1c4180bcf0d7dbd1d0c854948b7b57e88437d3e \ No newline at end of file diff --git a/configure.ac.REMOVED.git-id b/configure.ac.REMOVED.git-id index 94b077e522..26678fb176 100644 --- a/configure.ac.REMOVED.git-id +++ b/configure.ac.REMOVED.git-id @@ -1 +1 @@ -6c62eb854febb497f6a00b1d119dc74f32b6152d \ No newline at end of file +875e956a9948f7a01d1d037a18e75e92d31b02ed \ No newline at end of file diff --git a/external/api-snapshot/profiles/net_4_x/Mono.Debugger.Soft.cs b/external/api-snapshot/profiles/net_4_x/Mono.Debugger.Soft.cs index 7cbde416f2..7d8eced1ee 100644 --- a/external/api-snapshot/profiles/net_4_x/Mono.Debugger.Soft.cs +++ b/external/api-snapshot/profiles/net_4_x/Mono.Debugger.Soft.cs @@ -836,6 +836,7 @@ namespace Mono.Debugger.Soft public Mono.Debugger.Soft.EnumMirror CreateEnumMirror(Mono.Debugger.Soft.TypeMirror type, Mono.Debugger.Soft.PrimitiveValue value) { throw null; } public Mono.Debugger.Soft.ExceptionEventRequest CreateExceptionRequest(Mono.Debugger.Soft.TypeMirror exc_type) { throw null; } public Mono.Debugger.Soft.ExceptionEventRequest CreateExceptionRequest(Mono.Debugger.Soft.TypeMirror exc_type, bool caught, bool uncaught) { throw null; } + public Mono.Debugger.Soft.ExceptionEventRequest CreateExceptionRequest(Mono.Debugger.Soft.TypeMirror exc_type, bool caught, bool uncaught, bool everything_else) { throw null; } public Mono.Debugger.Soft.MethodEntryEventRequest CreateMethodEntryRequest() { throw null; } public Mono.Debugger.Soft.MethodExitEventRequest CreateMethodExitRequest() { throw null; } public Mono.Debugger.Soft.StepEventRequest CreateStepRequest(Mono.Debugger.Soft.ThreadMirror thread) { throw null; } diff --git a/mcs/build/common/Consts.cs b/mcs/build/common/Consts.cs index a417fbdc50..353d0fa433 100644 --- a/mcs/build/common/Consts.cs +++ b/mcs/build/common/Consts.cs @@ -41,7 +41,7 @@ static partial class Consts // Use these assembly version constants to make code more maintainable. // - public const string MonoVersion = "6.6.0.89"; + public const string MonoVersion = "6.6.0.97"; public const string MonoCompany = "Mono development team"; public const string MonoProduct = "Mono Common Language Infrastructure"; public const string MonoCopyright = "(c) Various Mono authors"; diff --git a/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/Connection.cs b/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/Connection.cs index febf383b2a..7e895773bc 100644 --- a/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/Connection.cs +++ b/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/Connection.cs @@ -307,8 +307,15 @@ namespace Mono.Debugger.Soft public bool Subclasses { get; set; } + public bool NotFilteredFeature { + get; set; + } + public bool EverythingElse { + get; set; + } } + class AssemblyModifier : Modifier { public long[] Assemblies { get; set; @@ -429,7 +436,7 @@ namespace Mono.Debugger.Soft * with newer runtimes, and vice versa. */ internal const int MAJOR_VERSION = 2; - internal const int MINOR_VERSION = 53; + internal const int MINOR_VERSION = 54; enum WPSuspendPolicy { NONE = 0, @@ -2632,6 +2639,10 @@ namespace Mono.Debugger.Soft } else if (!em.Subclasses) { throw new NotSupportedException ("This request is not supported by the protocol version implemented by the debuggee."); } + if (Version.MajorVersion > 2 || Version.MinorVersion >= 54) { + w.WriteBool (em.NotFilteredFeature); + w.WriteBool (em.EverythingElse); + } } else if (mod is AssemblyModifier) { w.WriteByte ((byte)ModifierKind.ASSEMBLY_ONLY); var amod = (mod as AssemblyModifier); diff --git a/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/ExceptionEventRequest.cs b/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/ExceptionEventRequest.cs index 906b43fd83..869bd5f23c 100644 --- a/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/ExceptionEventRequest.cs +++ b/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/ExceptionEventRequest.cs @@ -6,9 +6,9 @@ namespace Mono.Debugger.Soft public sealed class ExceptionEventRequest : EventRequest { TypeMirror exc_type; - bool caught, uncaught, subclasses; + bool caught, uncaught, subclasses, not_filtered_feature, everything_else; - internal ExceptionEventRequest (VirtualMachine vm, TypeMirror exc_type, bool caught, bool uncaught) : base (vm, EventType.Exception) { + internal ExceptionEventRequest (VirtualMachine vm, TypeMirror exc_type, bool caught, bool uncaught, bool not_filtered_feature = false, bool everything_else = false) : base (vm, EventType.Exception) { if (exc_type != null) { CheckMirror (vm, exc_type); TypeMirror exception_type = vm.RootDomain.Corlib.GetType ("System.Exception", false, false); @@ -19,6 +19,8 @@ namespace Mono.Debugger.Soft this.caught = caught; this.uncaught = uncaught; this.subclasses = true; + this.not_filtered_feature = not_filtered_feature; + this.everything_else = everything_else; } public TypeMirror ExceptionType { @@ -41,7 +43,7 @@ namespace Mono.Debugger.Soft public override void Enable () { var mods = new List (); - mods.Add (new ExceptionModifier () { Type = exc_type != null ? exc_type.Id : 0, Caught = caught, Uncaught = uncaught, Subclasses = subclasses }); + mods.Add (new ExceptionModifier () { Type = exc_type != null ? exc_type.Id : 0, Caught = caught, Uncaught = uncaught, Subclasses = subclasses, NotFilteredFeature = not_filtered_feature, EverythingElse = everything_else }); SendReq (mods); } } diff --git a/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/VirtualMachine.cs b/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/VirtualMachine.cs index 8cbe54a697..1912626d22 100644 --- a/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/VirtualMachine.cs +++ b/mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/VirtualMachine.cs @@ -277,6 +277,13 @@ namespace Mono.Debugger.Soft return new ExceptionEventRequest (this, exc_type, caught, uncaught); } + public ExceptionEventRequest CreateExceptionRequest (TypeMirror exc_type, bool caught, bool uncaught, bool everything_else) { + if (Version.AtLeast (2, 54)) + return new ExceptionEventRequest (this, exc_type, caught, uncaught, true, everything_else); + else + return new ExceptionEventRequest (this, exc_type, caught, uncaught); + } + public AssemblyLoadEventRequest CreateAssemblyLoadRequest () { return new AssemblyLoadEventRequest (this); } diff --git a/mcs/class/Mono.Debugger.Soft/Test/dtest-app.cs b/mcs/class/Mono.Debugger.Soft/Test/dtest-app.cs index d6894d3ca9..37dd0e3e6a 100644 --- a/mcs/class/Mono.Debugger.Soft/Test/dtest-app.cs +++ b/mcs/class/Mono.Debugger.Soft/Test/dtest-app.cs @@ -584,6 +584,7 @@ public class Tests : TestsBase, ITest2 inspect_enumerator_in_generic_struct(); if_property_stepping(); fixed_size_array(); + test_new_exception_filter(); return 3; } @@ -595,6 +596,11 @@ public class Tests : TestsBase, ITest2 } } + public class MyException : Exception { + public MyException(string message) : base(message) { + } + } + public static void if_property_stepping() { var test = new TestClass(); if (test.OneLineProperty == "someInvalidValue6049e709-7271-41a1-bc0a-f1f1b80d4125") @@ -827,6 +833,57 @@ public class Tests : TestsBase, ITest2 n.Buffer2 = new char4('a', 'b', 'c', 'd'); } + [MethodImplAttribute (MethodImplOptions.NoInlining)] + public static void test_new_exception_filter () { + test_new_exception_filter1(); + test_new_exception_filter2(); + test_new_exception_filter3(); + test_new_exception_filter4(); + } + + + public static void test_new_exception_filter1 () { + try { + throw new Exception("excp"); + } + catch (Exception e) { + } + } + + public static void test_new_exception_filter2 () { + try { + throw new MyException("excp"); + } + catch (Exception e) { + } + } + + public static void test_new_exception_filter3 () { + try { + throw new ArgumentException(); + } + catch (Exception e) { + } + try { + throw new Exception("excp"); + } + catch (Exception e) { + } + } + + public static void test_new_exception_filter4 () { + try { + throw new ArgumentException(); + } + catch (Exception e) { + } + try { + throw new Exception("excp"); + } + catch (Exception e) { + } + } + [MethodImplAttribute (MethodImplOptions.NoInlining)] public static void inspect_enumerator_in_generic_struct() { TestEnumeratorInsideGenericStruct generic_struct = new TestEnumeratorInsideGenericStruct(new KeyValuePair("0", "f1")); diff --git a/mcs/class/Mono.Debugger.Soft/Test/dtest.cs.REMOVED.git-id b/mcs/class/Mono.Debugger.Soft/Test/dtest.cs.REMOVED.git-id index 1cd5777c72..65e22b0484 100644 --- a/mcs/class/Mono.Debugger.Soft/Test/dtest.cs.REMOVED.git-id +++ b/mcs/class/Mono.Debugger.Soft/Test/dtest.cs.REMOVED.git-id @@ -1 +1 @@ -75967555e6b2fb9903c055d496b749f56798e897 \ No newline at end of file +ec003a04c422d9f2b5c359cfde61cd3a6b2f4b9a \ No newline at end of file diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlSerializationReaderInterpreter.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlSerializationReaderInterpreter.cs index b167411749..d03dea1ff0 100644 --- a/mcs/class/System.XML/System.Xml.Serialization/XmlSerializationReaderInterpreter.cs +++ b/mcs/class/System.XML/System.Xml.Serialization/XmlSerializationReaderInterpreter.cs @@ -204,9 +204,11 @@ namespace System.Xml.Serialization { if (isNullable && ReadNull()) return null; - if (checkType) { - System.Xml.XmlQualifiedName t = GetXsiType(); - if (t != null) { + if (checkType) + { + System.Xml.XmlQualifiedName t = GetXsiType(); + if (t != null) + { XmlTypeMapping realMap = typeMap.GetRealElementMap (t.Name, t.Namespace); if (realMap == null) { if (typeMap.TypeData.Type == typeof(object)) @@ -219,12 +221,7 @@ namespace System.Xml.Serialization } else if (typeMap.TypeData.Type == typeof(object)) return ReadTypedPrimitive (AnyType); - else { - XmlTypeMapping realMap = typeMap.GetRealElementMap (Reader.LocalName, Reader.NamespaceURI); - if (realMap != null && realMap != typeMap) - return ReadObject(realMap, false, false); - } - } + } object ob = CreateInstance (typeMap.TypeData.Type, true); diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs index ff81f115b3..f70bd99464 100644 --- a/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs +++ b/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs @@ -389,7 +389,7 @@ namespace System.Xml.Serialization return (XmlTypeMapMemberAttribute)_attributeMembers [BuildKey (name,ns, -1)]; } - public XmlTypeMapElementInfo GetElement (string name, string ns, int minimalOrder) + public XmlTypeMapElementInfo GetElement(string name, string ns, int minimalOrder) { if (_elements == null) return null; @@ -404,38 +404,22 @@ namespace System.Xml.Serialization selected = info; } } - else if (info.MappedType != null && info.MappedType.DerivedTypes.Count > 0) { - foreach (XmlTypeMapping derrivedInfo in info.MappedType.DerivedTypes) { - if (derrivedInfo.ElementName == name && derrivedInfo.Namespace == ns) { - if (info.ExplicitOrder < minimalOrder) - continue; - - if (selected == null || selected.ExplicitOrder > info.ExplicitOrder) { - selected = info; - } - } - } - } } return selected; } - public XmlTypeMapElementInfo GetElement (string name, string ns) + public XmlTypeMapElementInfo GetElement(string name, string ns) { if (_elements == null) return null; foreach (XmlTypeMapElementInfo info in _elements.Values) if (info.ElementName == name && info.Namespace == ns) return info; - else if (info.MappedType != null && info.MappedType.DerivedTypes.Count > 0) { - foreach (XmlTypeMapping derrivedInfo in info.MappedType.DerivedTypes) - if (derrivedInfo.ElementName == name && derrivedInfo.Namespace == ns) - return info; - } + return null; } - + public XmlTypeMapElementInfo GetElement (int index) { if (_elements == null) return null; diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/DeserializeTests.cs b/mcs/class/System.XML/Test/System.Xml.Serialization/DeserializeTests.cs index 4695cfe64f..a82cac7d92 100644 --- a/mcs/class/System.XML/Test/System.Xml.Serialization/DeserializeTests.cs +++ b/mcs/class/System.XML/Test/System.Xml.Serialization/DeserializeTests.cs @@ -14,6 +14,7 @@ using System; using System.Globalization; using System.IO; +using System.Text; using System.Xml; using System.Xml.Serialization; using NUnit.Framework; @@ -1686,28 +1687,40 @@ namespace MonoTests.System.XmlSerialization Assert.AreEqual ("b", d.Extra[1]); } - [Test] // PR #11194 - public void TestDerrivedClassProperty () + // https://github.com/mono/mono/issues/16918 + [Test] + public void Bug16918 () { - var data = "

"; + PropertiesWithSameNameAsTheirType testObject = new PropertiesWithSameNameAsTheirType () + { + E1 = E1.Two, + E2 = E2.Two, + E3 = E3.Two, + E4 = E4.Two, + E5 = E5.Two + }; - XmlAttributeOverrides overrides = PR11194.GenerateLayoutOverrides(); + XmlSerializer serializer = new XmlSerializer (typeof (PropertiesWithSameNameAsTheirType)); - var result = Deserialize(typeof(PR11194ChildLo), data, overrides) as PR11194ChildLo; + // serialize + string serializedObject; + using (MemoryStream memoryStream = new MemoryStream ()) + { + serializer.Serialize (memoryStream, testObject); + serializedObject = Encoding.UTF8.GetString (memoryStream.ToArray ()); + } - PR11194Parent2 child; - Assert.IsNotNull(result, "#11194_1"); - Assert.AreEqual(1, result.children.Count, "#11194_2"); - child = result.children[0] as PR11194Parent2; - Assert.IsNotNull(child, "#11194_3"); - Assert.AreEqual(1, child.children.Count, "#11194_4"); - child = child.children[0] as PR11194Parent2; - Assert.IsNotNull(child, "#11194_5"); - Assert.AreEqual(7, child.children.Count, "#11194_6"); - child = child.children[1] as PR11194Parent2; - Assert.IsNotNull(child, "#11194_7"); - Assert.AreEqual(1, child.children.Count, "#11194_8"); - Assert.AreEqual("PR11194ChildL", child.children[0].GetType().Name, "#11194_9"); + PropertiesWithSameNameAsTheirType deserializedObject; + using (MemoryStream memoryStream = new MemoryStream (Encoding.UTF8.GetBytes (serializedObject))) + { + deserializedObject = (PropertiesWithSameNameAsTheirType)serializer.Deserialize (memoryStream); + } + + Assert.AreEqual (testObject.E1, deserializedObject.E1, "#1"); + Assert.AreEqual (testObject.E2, deserializedObject.E2, "#2"); + Assert.AreEqual (testObject.E3, deserializedObject.E3, "#3"); + Assert.AreEqual (testObject.E4, deserializedObject.E4, "#4"); + Assert.AreEqual (testObject.E5, deserializedObject.E5, "#5"); } } } diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializerTestClasses.cs b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializerTestClasses.cs index 167d991e09..200ca84cec 100644 --- a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializerTestClasses.cs +++ b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializerTestClasses.cs @@ -12,8 +12,6 @@ // using System; -using System.Linq; -using System.Reflection; using System.Collections; using System.Collections.Generic; using System.ComponentModel; @@ -1207,157 +1205,54 @@ namespace MonoTests.System.Xml.TestClasses } } - - #region PR_11194 - - #region PR_11194_GenerateOverrides - public static class PR11194 + [Serializable] + public class PropertiesWithSameNameAsTheirType { - public static XmlAttributeOverrides GenerateLayoutOverrides() + public PropertiesWithSameNameAsTheirType () { - Type tType = typeof(T); - - TypeInfo tTypeInfo = tType.GetTypeInfo(); - - IEnumerable props = tType.GetRuntimeProperties(); - - XmlAttributeOverrides overrides = new XmlAttributeOverrides(); - - foreach (PropertyInfo prop in props) { - XmlDerrivedAttribute attr = prop.GetCustomAttribute(); - - if (attr == null) { - continue; - } - - Type dType = prop.DeclaringType; - - Type pType = prop.PropertyType; - TypeInfo pTypeInfo = pType.GetTypeInfo(); - - Type enumType = typeof(IEnumerable<>); - - if (pTypeInfo.IsGenericType - && pTypeInfo.ImplementedInterfaces.Any(t => - (t.GetTypeInfo().IsGenericType && t.GetGenericTypeDefinition() == enumType))) { - pType = pType.GenericTypeArguments[0]; - } - - XmlAttributes overrideAttributes = GenerateOverrideAttributes(dType, pType, attr); - - overrides.Add(dType, prop.Name, overrideAttributes); - } - - return overrides; } - private static XmlAttributes GenerateOverrideAttributes (Type declaringType, Type propertyType, XmlDerrivedAttribute attr) - { - XmlAttributes xAttrs = new XmlAttributes(); + public object obj1 { get; set; } + public object obj2 { get; set; } + public object obj3 { get; set; } + public object obj4 { get; set; } + public object obj5 { get; set; } - Assembly a = declaringType.GetTypeInfo().Assembly; - TypeInfo interfaceType = propertyType.GetTypeInfo(); - IEnumerable types = a.ExportedTypes.Where(t => interfaceType.IsAssignableFrom(t.GetTypeInfo()) && !t.GetTypeInfo().IsAbstract); - - foreach (Type t in types) { - string name = NameBySourceType(t, attr.SrcType);// t.GetTypeInfo().GetCustomAttribute().TypeName; - XmlElementAttribute xAttr = new XmlElementAttribute(); - xAttr.ElementName = name; - xAttr.Type = t; - xAttrs.XmlElements.Add(xAttr); - } - - return xAttrs; - } - - private static string NameBySourceType (Type derrivedType, XmlDerrivedSourceType srcType) - { - string name = null; - switch (srcType) - { - case XmlDerrivedSourceType.ByXmlType: - name = derrivedType.GetTypeInfo().GetCustomAttribute().TypeName; - break; - } - return name; - } + public E1 E1 { get; set; } + public E2 E2 { get; set; } + public E3 E3 { get; set; } + public E4 E4 { get; set; } + public E5 E5 { get; set; } } - #endregion - #region helperAttribute - public enum XmlDerrivedSourceType + public enum E1 { - ByXmlType + One, + Two, } - public class XmlDerrivedAttribute : Attribute + public enum E2 { - public XmlDerrivedSourceType SrcType { get; set; } - - public XmlDerrivedAttribute(XmlDerrivedSourceType srcType) - { - SrcType = srcType; - } + One, + Two, } - #endregion - public abstract class PR11194Parent + public enum E5 { - [XmlIgnore] - public PR11194Parent Parent { get; set; } + One, + Two, } - public abstract class PR11194Parent2 : PR11194Parent + public enum E3 { - [XmlAttribute] - public float width { get; set; } - [XmlAttribute] - public float height { get; set; } - [XmlAttribute] - public float x { get; set; } - [XmlAttribute] - public float y { get; set; } - [XmlAttribute] - public string id { get; set; } - [XmlElement] - [XmlDerrived(XmlDerrivedSourceType.ByXmlType)] - public List children { get; set; } + One, + Two, } - [XmlType("background")] - public class PR11194ChildB : PR11194Parent2 + public enum E4 { - [XmlAttribute] - public string image { get; set; } + One, + Two, } - - [XmlType("br")] - public class PR11194ChildBr : PR11194Parent - { - [XmlAttribute("brSize")] - public int breaks { get; set; } - } - - [XmlType("div")] - public class PR11194ChildD : PR11194ChildLo - { - } - - [XmlType("label")] - public class PR11194ChildL : PR11194Parent2 - { - [XmlAttribute] - public string font { get; set; } - [XmlAttribute] - public int fontSize { get; set; } - [XmlText] - public string Text { get; set; } - } - - [XmlType("layout")] - public class PR11194ChildLo : PR11194Parent2 - { - } - #endregion } diff --git a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id index 13ea0836e2..83f95e54e8 100644 --- a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id @@ -1 +1 @@ -ad3e9f580ce57dfc6b40093729af53da06f1eae2 \ No newline at end of file +edc1389c07394c14b27e463871b22b1561937374 \ No newline at end of file diff --git a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id index 12133590fa..2fdf1e4aaa 100644 --- a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id @@ -1 +1 @@ -c2b1ff6d4020e64bf4e4321b012d2e6bd6df851e \ No newline at end of file +4ff2e299148bc180e72ad19f5adfddb59f8968ac \ No newline at end of file diff --git a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id index 9133e01bcb..c1b44866ff 100644 --- a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id @@ -1 +1 @@ -57346dfa4dfcfd703c2e6439ba239e8abd8f8fdc \ No newline at end of file +29a1fbbf19d42d96405d39a21f1513237b134c2f \ No newline at end of file diff --git a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id index a4c386f43d..675ee9027a 100644 --- a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id @@ -1 +1 @@ -a4d856f22d3b31af4aec91144bc95a8935797dd3 \ No newline at end of file +59d20293264f996016a6966494e42c88ded3d2f0 \ No newline at end of file diff --git a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id index c9f6302086..a96c07894d 100644 --- a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id @@ -1 +1 @@ -e824e7d2594502e33b8b81dfae235e687dd2ca0c \ No newline at end of file +2407bcaadeea1315459f2dcc9f409c43878239e6 \ No newline at end of file diff --git a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id index c675021ba3..21d09dcf6e 100644 --- a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id @@ -1 +1 @@ -a1c4c11b881596a0dc2da00d93455838c01cb2e7 \ No newline at end of file +02111185a37ca5018aba384763d2dae87428e1bc \ No newline at end of file diff --git a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id index c039d5c175..8e979d5b28 100644 --- a/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-linux/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id @@ -1 +1 @@ -58f405417ff660b59be83af91c05be02fc94df89 \ No newline at end of file +7367be6e5163b9fc3bacb712cdc3874535ce373a \ No newline at end of file diff --git a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id index 13ea0836e2..83f95e54e8 100644 --- a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id @@ -1 +1 @@ -ad3e9f580ce57dfc6b40093729af53da06f1eae2 \ No newline at end of file +edc1389c07394c14b27e463871b22b1561937374 \ No newline at end of file diff --git a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id index 12133590fa..2fdf1e4aaa 100644 --- a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id @@ -1 +1 @@ -c2b1ff6d4020e64bf4e4321b012d2e6bd6df851e \ No newline at end of file +4ff2e299148bc180e72ad19f5adfddb59f8968ac \ No newline at end of file diff --git a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id index 9133e01bcb..c1b44866ff 100644 --- a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id @@ -1 +1 @@ -57346dfa4dfcfd703c2e6439ba239e8abd8f8fdc \ No newline at end of file +29a1fbbf19d42d96405d39a21f1513237b134c2f \ No newline at end of file diff --git a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id index a4c386f43d..675ee9027a 100644 --- a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id @@ -1 +1 @@ -a4d856f22d3b31af4aec91144bc95a8935797dd3 \ No newline at end of file +59d20293264f996016a6966494e42c88ded3d2f0 \ No newline at end of file diff --git a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id index c9f6302086..a96c07894d 100644 --- a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id @@ -1 +1 @@ -e824e7d2594502e33b8b81dfae235e687dd2ca0c \ No newline at end of file +2407bcaadeea1315459f2dcc9f409c43878239e6 \ No newline at end of file diff --git a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id index c675021ba3..21d09dcf6e 100644 --- a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id @@ -1 +1 @@ -a1c4c11b881596a0dc2da00d93455838c01cb2e7 \ No newline at end of file +02111185a37ca5018aba384763d2dae87428e1bc \ No newline at end of file diff --git a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id index 173974b92f..7fbb8d62a5 100644 --- a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id +++ b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id @@ -1 +1 @@ -1e0c910b7337cef0f64db972351d622bd38639ea \ No newline at end of file +fe56122f136d473f918fc364b67d415599c5ef19 \ No newline at end of file diff --git a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id index c039d5c175..8e979d5b28 100644 --- a/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-macos/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id @@ -1 +1 @@ -58f405417ff660b59be83af91c05be02fc94df89 \ No newline at end of file +7367be6e5163b9fc3bacb712cdc3874535ce373a \ No newline at end of file diff --git a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id index 13ea0836e2..83f95e54e8 100644 --- a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id @@ -1 +1 @@ -ad3e9f580ce57dfc6b40093729af53da06f1eae2 \ No newline at end of file +edc1389c07394c14b27e463871b22b1561937374 \ No newline at end of file diff --git a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id index 12133590fa..2fdf1e4aaa 100644 --- a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id @@ -1 +1 @@ -c2b1ff6d4020e64bf4e4321b012d2e6bd6df851e \ No newline at end of file +4ff2e299148bc180e72ad19f5adfddb59f8968ac \ No newline at end of file diff --git a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id index 9133e01bcb..c1b44866ff 100644 --- a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id @@ -1 +1 @@ -57346dfa4dfcfd703c2e6439ba239e8abd8f8fdc \ No newline at end of file +29a1fbbf19d42d96405d39a21f1513237b134c2f \ No newline at end of file diff --git a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id index a4c386f43d..675ee9027a 100644 --- a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id @@ -1 +1 @@ -a4d856f22d3b31af4aec91144bc95a8935797dd3 \ No newline at end of file +59d20293264f996016a6966494e42c88ded3d2f0 \ No newline at end of file diff --git a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id index c9f6302086..a96c07894d 100644 --- a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id @@ -1 +1 @@ -e824e7d2594502e33b8b81dfae235e687dd2ca0c \ No newline at end of file +2407bcaadeea1315459f2dcc9f409c43878239e6 \ No newline at end of file diff --git a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id index c675021ba3..21d09dcf6e 100644 --- a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id @@ -1 +1 @@ -a1c4c11b881596a0dc2da00d93455838c01cb2e7 \ No newline at end of file +02111185a37ca5018aba384763d2dae87428e1bc \ No newline at end of file diff --git a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id index 173974b92f..7fbb8d62a5 100644 --- a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id +++ b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id @@ -1 +1 @@ -1e0c910b7337cef0f64db972351d622bd38639ea \ No newline at end of file +fe56122f136d473f918fc364b67d415599c5ef19 \ No newline at end of file diff --git a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id index c039d5c175..8e979d5b28 100644 --- a/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-unix/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id @@ -1 +1 @@ -58f405417ff660b59be83af91c05be02fc94df89 \ No newline at end of file +7367be6e5163b9fc3bacb712cdc3874535ce373a \ No newline at end of file diff --git a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id index 13ea0836e2..83f95e54e8 100644 --- a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/Mono.Security.dll.REMOVED.git-id @@ -1 +1 @@ -ad3e9f580ce57dfc6b40093729af53da06f1eae2 \ No newline at end of file +edc1389c07394c14b27e463871b22b1561937374 \ No newline at end of file diff --git a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id index 12133590fa..2fdf1e4aaa 100644 --- a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Configuration.dll.REMOVED.git-id @@ -1 +1 @@ -c2b1ff6d4020e64bf4e4321b012d2e6bd6df851e \ No newline at end of file +4ff2e299148bc180e72ad19f5adfddb59f8968ac \ No newline at end of file diff --git a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id index 7c042236de..827403ac8a 100644 --- a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Core.dll.REMOVED.git-id @@ -1 +1 @@ -e65f302024fac9b33d86c384defd8833cd83a95b \ No newline at end of file +1dd0fe1ec96f67481278bd2e0eaa6afe2f20043e \ No newline at end of file diff --git a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id index a4c386f43d..675ee9027a 100644 --- a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.IO.Compression.dll.REMOVED.git-id @@ -1 +1 @@ -a4d856f22d3b31af4aec91144bc95a8935797dd3 \ No newline at end of file +59d20293264f996016a6966494e42c88ded3d2f0 \ No newline at end of file diff --git a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id index c9f6302086..a96c07894d 100644 --- a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Numerics.dll.REMOVED.git-id @@ -1 +1 @@ -e824e7d2594502e33b8b81dfae235e687dd2ca0c \ No newline at end of file +2407bcaadeea1315459f2dcc9f409c43878239e6 \ No newline at end of file diff --git a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id index c675021ba3..21d09dcf6e 100644 --- a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/System.Xml.dll.REMOVED.git-id @@ -1 +1 @@ -a1c4c11b881596a0dc2da00d93455838c01cb2e7 \ No newline at end of file +02111185a37ca5018aba384763d2dae87428e1bc \ No newline at end of file diff --git a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id index 173974b92f..7fbb8d62a5 100644 --- a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id +++ b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mcs.exe.REMOVED.git-id @@ -1 +1 @@ -1e0c910b7337cef0f64db972351d622bd38639ea \ No newline at end of file +fe56122f136d473f918fc364b67d415599c5ef19 \ No newline at end of file diff --git a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id index 1d4eafadd8..3e725dd2a3 100644 --- a/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite-win32/2cfaeda3-94a9-44e5-8fcb-51979a3398c9/mscorlib.dll.REMOVED.git-id @@ -1 +1 @@ -4130936eadcb3b7f17d5daea6e5c0ccf333e0e80 \ No newline at end of file +c1d6d365f014df7509c75839511a94e3f9ccfc70 \ No newline at end of file diff --git a/mono/mini/debugger-agent.c.REMOVED.git-id b/mono/mini/debugger-agent.c.REMOVED.git-id index 25db11ad7c..3dfdb5107c 100644 --- a/mono/mini/debugger-agent.c.REMOVED.git-id +++ b/mono/mini/debugger-agent.c.REMOVED.git-id @@ -1 +1 @@ -c2451bf5daef2c3fd185de52337a5c63f3fe2cde \ No newline at end of file +df6329391df4d8d574efdcff9e616e4e5ca30e85 \ No newline at end of file diff --git a/mono/mini/debugger-engine.c b/mono/mini/debugger-engine.c index 8bd9ffd848..f22b031e91 100644 --- a/mono/mini/debugger-engine.c +++ b/mono/mini/debugger-engine.c @@ -1277,11 +1277,9 @@ mono_de_ss_start (SingleStepReq *ss_req, SingleStepArgs *ss_args) int nframes = ss_args->nframes; SeqPoint *sp = &ss_args->sp; -#if defined(HOST_ANDROID) || defined(TARGET_ANDROID) - /* this can happen on a single step in a exception on android (Mono_UnhandledException_internal) */ + /* this can happen on a single step in a exception on android (Mono_UnhandledException_internal) and on IOS */ if (!method) return; -#endif /* * Implement single stepping using breakpoints if possible. diff --git a/mono/mini/debugger-engine.h b/mono/mini/debugger-engine.h index f53863b1bd..bd9fd62ab7 100644 --- a/mono/mini/debugger-engine.h +++ b/mono/mini/debugger-engine.h @@ -79,7 +79,7 @@ typedef struct { GHashTable *type_names; /* For kind == MONO_KIND_TYPE_NAME_ONLY */ StepFilter filter; /* For kind == MOD_KIND_STEP */ } data; - gboolean caught, uncaught, subclasses; /* For kind == MOD_KIND_EXCEPTION_ONLY */ + gboolean caught, uncaught, subclasses, not_filtered_feature, everything_else; /* For kind == MOD_KIND_EXCEPTION_ONLY */ } Modifier; typedef struct{ diff --git a/mono/mini/mini-exceptions.c.REMOVED.git-id b/mono/mini/mini-exceptions.c.REMOVED.git-id index 9d7417e862..1a3ac2e8e8 100644 --- a/mono/mini/mini-exceptions.c.REMOVED.git-id +++ b/mono/mini/mini-exceptions.c.REMOVED.git-id @@ -1 +1 @@ -9c51fe9e057764a2c474409e541765e47c9af7bf \ No newline at end of file +5009c2410ad11a3c1f2dbde86cd70bb05e273adc \ No newline at end of file diff --git a/mono/mini/version.h b/mono/mini/version.h index 3fd0aad6ea..6cf66f1210 100644 --- a/mono/mini/version.h +++ b/mono/mini/version.h @@ -1 +1 @@ -#define FULL_VERSION "explicit/bb522ed" +#define FULL_VERSION "explicit/af008b2" diff --git a/mono/unit-tests/Makefile.in b/mono/unit-tests/Makefile.in index 7b45dbc879..eed954ce12 100644 --- a/mono/unit-tests/Makefile.in +++ b/mono/unit-tests/Makefile.in @@ -1496,10 +1496,10 @@ distclean-generic: maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -@CROSS_COMPILE_TRUE@test-local: -@HOST_WIN32_TRUE@test-local: @CROSS_COMPILE_TRUE@clean-local: @HOST_WIN32_TRUE@clean-local: +@CROSS_COMPILE_TRUE@test-local: +@HOST_WIN32_TRUE@test-local: clean: clean-am clean-am: clean-checkPROGRAMS clean-generic clean-libtool clean-local \ diff --git a/mono/utils/mono-threads.c b/mono/utils/mono-threads.c index f2e45d8116..2086b619ee 100644 --- a/mono/utils/mono-threads.c +++ b/mono/utils/mono-threads.c @@ -586,6 +586,12 @@ unregister_thread (void *arg) mono_thread_hazardous_try_free (info, free_thread_info); mono_thread_small_id_free (small_id); + // clear the small_id thread local, in case this thread so that if it is reattached while running other TLS key dtors it will get a new small id +#ifdef MONO_KEYWORD_THREAD + tls_small_id = -1; +#else + mono_native_tls_set_value (small_id_key, NULL); +#endif mono_threads_signal_thread_handle (handle); diff --git a/msvc/Makefile.in b/msvc/Makefile.in index a35c268f47..23ce0a9ad5 100644 --- a/msvc/Makefile.in +++ b/msvc/Makefile.in @@ -525,8 +525,8 @@ distclean-generic: maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -@ENABLE_MSVC_FALSE@install-exec-local: @ENABLE_MSVC_FALSE@clean-local: +@ENABLE_MSVC_FALSE@install-exec-local: clean: clean-am clean-am: clean-generic clean-libtool clean-local mostlyclean-am diff --git a/po/mcs/de.gmo b/po/mcs/de.gmo index 5ef9e034ea1c7dd822aaecef3a44ca5cb2dde489..14c87776f536b0a6fd46f083e763df7909b1ae43 100644 GIT binary patch delta 20 bcmbQIHBW29Q!aK>1p`Yf1EbAvxQw^}N`?k@ delta 20 bcmbQIHBW29Q!aKB1p^B!BeTtKxQw^}N|y$D diff --git a/po/mcs/de.po.REMOVED.git-id b/po/mcs/de.po.REMOVED.git-id index d1d6e4f05b..0547bebe72 100644 --- a/po/mcs/de.po.REMOVED.git-id +++ b/po/mcs/de.po.REMOVED.git-id @@ -1 +1 @@ -94f3180e87013a67bca07d9de8db26bfb0e829a9 \ No newline at end of file +264bda96fa3234e217568c2650004f02a3997af7 \ No newline at end of file diff --git a/po/mcs/es.gmo b/po/mcs/es.gmo index 6193f8e4ea00990f271457cdaecfd9bf02c1f3da..c04a2def33a8d77acbdb07c0a7be1de8729cd645 100644 GIT binary patch delta 20 bcmX?Ef3kjqo+7)cf`O%#fzf7D#VK+CQKkm0 delta 20 bcmX?Ef3kjqo+7)6f`NsVk=bTb#VK+CQMU%L diff --git a/po/mcs/es.po.REMOVED.git-id b/po/mcs/es.po.REMOVED.git-id index e7355e97d6..27599b1490 100644 --- a/po/mcs/es.po.REMOVED.git-id +++ b/po/mcs/es.po.REMOVED.git-id @@ -1 +1 @@ -80f663c8d02f311a6b390a6ce7bc4c7259d5a19c \ No newline at end of file +90c129805db0ea6c9038a6877c0641359066791c \ No newline at end of file diff --git a/po/mcs/ja.gmo b/po/mcs/ja.gmo index 8d89191b3851683535f7134364d76f4f3a479b81..7fb08070e6270bf972826faec6277eeea724cae6 100644 GIT binary patch delta 22 dcmeyri1Gg-#tj_m?4}9^mR1HvoB7oXv;biE2M7QF delta 22 dcmeyri1Gg-#tj_m>?R5Z7FI@PoB7oXv;biV2MhoJ diff --git a/po/mcs/ja.po.REMOVED.git-id b/po/mcs/ja.po.REMOVED.git-id index 1bcf36ed70..65a45a207b 100644 --- a/po/mcs/ja.po.REMOVED.git-id +++ b/po/mcs/ja.po.REMOVED.git-id @@ -1 +1 @@ -bd7dd8a287754c7f9afe9282da13f54b4d11e885 \ No newline at end of file +eecd334f0adb90def5cec90b170d0d072264f202 \ No newline at end of file diff --git a/po/mcs/mcs.pot b/po/mcs/mcs.pot index dac5369cfd..4d28f1c41f 100644 --- a/po/mcs/mcs.pot +++ b/po/mcs/mcs.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: mono 6.6.0.89\n" +"Project-Id-Version: mono 6.6.0.97\n" "Report-Msgid-Bugs-To: http://www.mono-project.com/Bugs\n" -"POT-Creation-Date: 2019-09-24 08:26+0000\n" +"POT-Creation-Date: 2019-09-25 09:02+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/po/mcs/pt_BR.gmo b/po/mcs/pt_BR.gmo index f16a2e5515fbc76215991dce289105ab665b1224..6ac79efe70d56a9e45e6c382f4ca2718ceecccec 100644 GIT binary patch delta 22 ecmaF1gXP%{mJM-J*-aG;EUgTTHm6QyYzF{s?+AVX delta 22 ecmaF1gXP%{mJM-J*-aD-EUb*oHm6QyYzF{t00@Er diff --git a/po/mcs/pt_BR.po.REMOVED.git-id b/po/mcs/pt_BR.po.REMOVED.git-id index 726857736d..7270bf3a0d 100644 --- a/po/mcs/pt_BR.po.REMOVED.git-id +++ b/po/mcs/pt_BR.po.REMOVED.git-id @@ -1 +1 @@ -36d506ac1cdb16290d667593db1e5b2928cc50eb \ No newline at end of file +10bb4aecde65b8a57a9ec85da90df90c2e57c419 \ No newline at end of file diff --git a/runtime/Makefile.am b/runtime/Makefile.am index 154240d758..d88454a1fa 100644 --- a/runtime/Makefile.am +++ b/runtime/Makefile.am @@ -3,6 +3,8 @@ tmpinst = _tmpinst noinst_SCRIPTS = mono-wrapper monodis-wrapper +EXTRA_DIST = bin/mono-hang-watchdog.in + etctmp = etc symlinks = etc/mono/1.0/machine.config etc/mono/2.0/machine.config etc/mono/2.0/web.config etc/mono/browscap.ini etc/mono/2.0/Browsers/Compat.browser @@ -308,12 +310,3 @@ $(tmpinst)/bin/al: $(tmpinst)/bin/mono Makefile test-support-files: $(TEST_SUPPORT_FILES) @: - -# the 'cygnus' option also disables the default 'distdir:' target, which we _do_ want -MYDISTFILES = $(DIST_COMMON) -distdir: $(MYDISTFILES) - rm -fr $(distdir) - mkdir $(distdir) - test -z '$(MYDISTFILES)' || for file in ''$(MYDISTFILES); do \ - cp -p $$file $(distdir) ; done - find $(distdir) -type f -exec chmod a+r {} ';' diff --git a/runtime/Makefile.in b/runtime/Makefile.in index 15f91089d1..c61cd45345 100644 --- a/runtime/Makefile.in +++ b/runtime/Makefile.in @@ -431,6 +431,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ tmpinst = _tmpinst noinst_SCRIPTS = mono-wrapper monodis-wrapper +EXTRA_DIST = bin/mono-hang-watchdog.in etctmp = etc # This is needed at least to build configure --with-runtime-preset=fullaot. @@ -461,9 +462,6 @@ TEST_SUPPORT_FILES = $(tmpinst)/bin/mono $(tmpinst)/bin/ilasm $(tmpinst)/bin/csc VERIFY_TESTS_FILTER = System.Runtime.CompilerServices.Unsafe.dll \ $(am__append_17) Xunit.NetCore.Extensions.dll $(am__append_18) CLEANFILES = etc/mono/config - -# the 'cygnus' option also disables the default 'distdir:' target, which we _do_ want -MYDISTFILES = $(DIST_COMMON) all: all-am .SUFFIXES: @@ -514,6 +512,37 @@ ctags CTAGS: cscope cscopelist: + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done check-am: all-am $(MAKE) $(AM_MAKEFLAGS) check-local check: check-am @@ -830,12 +859,6 @@ $(tmpinst)/bin/al: $(tmpinst)/bin/mono Makefile test-support-files: $(TEST_SUPPORT_FILES) @: -distdir: $(MYDISTFILES) - rm -fr $(distdir) - mkdir $(distdir) - test -z '$(MYDISTFILES)' || for file in ''$(MYDISTFILES); do \ - cp -p $$file $(distdir) ; done - find $(distdir) -type f -exec chmod a+r {} ';' # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/runtime/bin/mono-hang-watchdog.in b/runtime/bin/mono-hang-watchdog.in new file mode 100644 index 0000000000..9862038fcc --- /dev/null +++ b/runtime/bin/mono-hang-watchdog.in @@ -0,0 +1,3 @@ +#! /bin/sh +r='@mono_build_root@' +exec "$r/tools/mono-hang-watchdog/mono-hang-watchdog" "$@" \ No newline at end of file diff --git a/runtime/mkinstalldirs b/runtime/mkinstalldirs deleted file mode 100755 index f28600bc6d..0000000000 --- a/runtime/mkinstalldirs +++ /dev/null @@ -1,101 +0,0 @@ -#! /bin/sh -# mkinstalldirs --- make directory hierarchy -# Author: Noah Friedman -# Created: 1993-05-16 -# Public domain - -# $Id: mkinstalldirs 36980 2004-12-03 01:08:33Z benm $ - -errstatus=0 -dirmode="" - -usage="\ -Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..." - -# process command line arguments -while test $# -gt 0 ; do - case "${1}" in - -h | --help | --h* ) # -h for help - echo "${usage}" 1>&2; exit 0 ;; - -m ) # -m PERM arg - shift - test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; } - dirmode="${1}" - shift ;; - -- ) shift; break ;; # stop option processing - -* ) echo "${usage}" 1>&2; exit 1 ;; # unknown option - * ) break ;; # first non-opt arg - esac -done - -for file -do - if test -d "$file"; then - shift - else - break - fi -done - -case $# in -0) exit 0 ;; -esac - -case $dirmode in -'') - if mkdir -p -- . 2>/dev/null; then - echo "mkdir -p -- $*" - exec mkdir -p -- "$@" - fi ;; -*) - if mkdir -m "$dirmode" -p -- . 2>/dev/null; then - echo "mkdir -m $dirmode -p -- $*" - exec mkdir -m "$dirmode" -p -- "$@" - fi ;; -esac - -for file -do - set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` - shift - - pathcomp= - for d - do - pathcomp="$pathcomp$d" - case "$pathcomp" in - -* ) pathcomp=./$pathcomp ;; - esac - - if test ! -d "$pathcomp"; then - echo "mkdir $pathcomp" - - mkdir "$pathcomp" || lasterr=$? - - if test ! -d "$pathcomp"; then - errstatus=$lasterr - else - if test ! -z "$dirmode"; then - echo "chmod $dirmode $pathcomp" - - lasterr="" - chmod "$dirmode" "$pathcomp" || lasterr=$? - - if test ! -z "$lasterr"; then - errstatus=$lasterr - fi - fi - fi - fi - - pathcomp="$pathcomp/" - done -done - -exit $errstatus - -# Local Variables: -# mode: shell-script -# sh-indentation: 3 -# End: -# mkinstalldirs ends here