diff --git a/eng/WpfArcadeSdk/tools/CodeGen/AvTrace/AvTraceMessages.tt b/eng/WpfArcadeSdk/tools/CodeGen/AvTrace/AvTraceMessages.tt index 71467b40910..f74ac470fc7 100644 --- a/eng/WpfArcadeSdk/tools/CodeGen/AvTrace/AvTraceMessages.tt +++ b/eng/WpfArcadeSdk/tools/CodeGen/AvTrace/AvTraceMessages.tt @@ -78,7 +78,7 @@ namespace MS.Internal /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -102,7 +102,7 @@ namespace MS.Internal /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { @@ -168,4 +168,4 @@ void OutputTraceCreation(int id, XElement traceDetails) _<#= traceDetails.Attribute("Name").Value #> = new AvTraceDetails(<#=id#>, new string[] { <#= dataString #> } ); <#+ } -#> \ No newline at end of file +#> diff --git a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Common.h b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Common.h index 4d82bc8c9a7..0ab997efc9a 100644 --- a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Common.h +++ b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Common.h @@ -6,6 +6,7 @@ #define __COMMON_H #include "precomp.hxx" +#include using namespace System::Security; @@ -64,7 +65,7 @@ private ref class Util sealed __declspec(noinline) const cli::interior_ptr static GetPtrToStringChars(System::String^ s) { - return CriticalPtrToStringChars(s); + return PtrToStringChars(s); } diff --git a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Factory.cpp b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Factory.cpp index b25679e325e..9c9ebaddfef 100644 --- a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Factory.cpp +++ b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Factory.cpp @@ -263,7 +263,7 @@ namespace MS { namespace Internal { namespace Text { namespace TextInterface { System::String^ uriString = uri->AbsoluteUri; IDWriteFontCollection* dwriteFontCollection = NULL; - pin_ptr uriPathWChar = CriticalPtrToStringChars(uriString); + pin_ptr uriPathWChar = PtrToStringChars(uriString); IntPtr pIDWriteFontCollectionLoaderMirror = Marshal::GetComInterfaceForObject( _wpfFontCollectionLoader, @@ -301,7 +301,7 @@ namespace MS { namespace Internal { namespace Text { namespace TextInterface if (isLocal) { //Protect the pointer to the filepath from being moved around by the garbage collector. - pin_ptr uriPathWChar = CriticalPtrToStringChars(filePathUri->LocalPath); + pin_ptr uriPathWChar = PtrToStringChars(filePathUri->LocalPath); // DWrite currently has a slow lookup for the last write time, which // introduced a noticable perf regression when we switched over. @@ -387,7 +387,7 @@ namespace MS { namespace Internal { namespace Text { namespace TextInterface { System::String^ filePath = filePathUri->AbsoluteUri; //Protect the pointer to the filepath from being moved around by the garbage collector. - pin_ptr uriPathWChar = CriticalPtrToStringChars(filePath); + pin_ptr uriPathWChar = PtrToStringChars(filePath); IntPtr pIDWriteFontFileLoaderMirror = Marshal::GetComInterfaceForObject( fontFileLoader, diff --git a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/FontCollection.cpp b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/FontCollection.cpp index 28d2b08a5cd..fdf54fa472a 100644 --- a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/FontCollection.cpp +++ b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/FontCollection.cpp @@ -3,7 +3,6 @@ // See the LICENSE file in the project root for more information. #include "FontCollection.h" -#include namespace MS { namespace Internal { namespace Text { namespace TextInterface { diff --git a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/LocalizedStrings.cpp b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/LocalizedStrings.cpp index 4d353f4d045..731c484e477 100644 --- a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/LocalizedStrings.cpp +++ b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/LocalizedStrings.cpp @@ -3,7 +3,6 @@ // See the LICENSE file in the project root for more information. #include "LocalizedStrings.h" -#include "wpfvcclr.h" namespace MS { namespace Internal { namespace Text { namespace TextInterface { @@ -144,7 +143,7 @@ namespace MS { namespace Internal { namespace Text { namespace TextInterface } else { - pin_ptr localeNameWChar = CriticalPtrToStringChars(localeName); + pin_ptr localeNameWChar = PtrToStringChars(localeName); BOOL exists = FALSE; UINT32 localeNameIndex = 0; HRESULT hr = _localizedStrings->Value->FindLocaleName( diff --git a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/TrueTypeSubsetter/util2.cpp b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/TrueTypeSubsetter/util2.cpp index 51a28664b8f..56d253328ef 100644 --- a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/TrueTypeSubsetter/util2.cpp +++ b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/TrueTypeSubsetter/util2.cpp @@ -4,8 +4,6 @@ #include "precomp.hxx" #include "util2.h" -#include - namespace MS { namespace Internal { namespace FontCache { @@ -15,7 +13,7 @@ bool Util2::GetRegistryKeyLastWriteTimeUtc(System::String ^ registryKey, [System { HKEY hkey = NULL; - pin_ptr registryKeyUnmanaged = CriticalPtrToStringChars(registryKey); + pin_ptr registryKeyUnmanaged = PtrToStringChars(registryKey); if (::RegOpenKeyExW(HKEY_LOCAL_MACHINE, registryKeyUnmanaged, 0, KEY_QUERY_VALUE, &hkey) == ERROR_SUCCESS) { diff --git a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/TrueTypeSubsetter/util2.h b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/TrueTypeSubsetter/util2.h index 71676319451..e66e1f40dda 100644 --- a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/TrueTypeSubsetter/util2.h +++ b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/TrueTypeSubsetter/util2.h @@ -4,6 +4,7 @@ #pragma once +#include namespace MS { namespace Internal { namespace FontCache { diff --git a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/wpfvcclr.h b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/wpfvcclr.h deleted file mode 100644 index d4c83cc3fb6..00000000000 --- a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/wpfvcclr.h +++ /dev/null @@ -1,61 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -//------------------------------------------------------------------------------ -// This file is a copy of , with modifications necessary for WPF. -//------------------------------------------------------------------------------ - -#if _MSC_VER > 1000 -#pragma once -#endif - -#if !defined(_INC_WPFVCCLR) -#define _INC_WPFVCCLR -#ifndef RC_INVOKED - -#using -#include - -#pragma warning(push) -#pragma warning(disable:4400) - -#ifdef __cplusplus_cli -typedef cli::interior_ptr __const_Char_ptr; -typedef cli::interior_ptr __const_Byte_ptr; -typedef cli::interior_ptr _Byte_ptr; -typedef const System::String^ __const_String_handle; -#define _NULLPTR nullptr -#else -typedef const System::Char* __const_Char_ptr; -typedef const System::Byte* __const_Byte_ptr; -typedef System::Byte* _Byte_ptr; -typedef const System::String* __const_String_handle; -#define _NULLPTR 0 -#endif - -/// -/// The standard PtrToStringChars function in vcclr.h is not annotated as -/// SecurityCritical. A recent change to the compiler detects this and -/// prevents it from being inlined. For some reason, this now causes -/// JIT-ing the first time this method is called. This JIT happens in a -/// startup code path that is sensitive to perf. So we make a copy here -/// and annotate it. -/// -inline __const_Char_ptr CriticalPtrToStringChars(__const_String_handle s) -{ - _Byte_ptr bp = const_cast<_Byte_ptr>(reinterpret_cast<__const_Byte_ptr>(s)); - if( bp != _NULLPTR ) - { - unsigned offset = System::Runtime::CompilerServices::RuntimeHelpers::OffsetToStringData; - bp += offset; - } - return reinterpret_cast<__const_Char_ptr>(bp); -} - -#pragma warning(pop) - -#undef _NULLPTR - -#endif /* RC_INVOKED */ -#endif //_INC_WPFVCCLR diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/Generated/AvTraceMessages.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/Generated/AvTraceMessages.cs index 431b410f591..34e5e6308a4 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/Generated/AvTraceMessages.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/Generated/AvTraceMessages.cs @@ -82,7 +82,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -106,7 +106,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { @@ -266,7 +266,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -290,7 +290,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Annotations/Serializer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Annotations/Serializer.cs index 56ef97b961d..5a69eeb668d 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Annotations/Serializer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Annotations/Serializer.cs @@ -57,7 +57,7 @@ public Serializer(Type type) Invariant.Assert(_attribute != null, "Internal Serializer used for a type with no XmlRootAttribute."); // Get the default constructor for the type - _ctor = type.GetConstructor(new Type[0]); + _ctor = type.GetConstructor(Array.Empty()); } /// @@ -90,7 +90,7 @@ public object Deserialize(XmlReader reader) { Invariant.Assert(reader != null); - IXmlSerializable serializable = (IXmlSerializable)_ctor.Invoke(new object[0]); + IXmlSerializable serializable = (IXmlSerializable)_ctor.Invoke(Array.Empty()); // If this is a brand-new stream we need to jump into it if (reader.ReadState == ReadState.Initial) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Generated/AvTraceMessages.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Generated/AvTraceMessages.cs index 6185c968ee2..8d529b662eb 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Generated/AvTraceMessages.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Generated/AvTraceMessages.cs @@ -1346,7 +1346,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -1370,7 +1370,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { @@ -1474,7 +1474,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -1498,7 +1498,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { @@ -1714,7 +1714,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -1738,7 +1738,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { @@ -2010,7 +2010,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -2034,7 +2034,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { @@ -2096,7 +2096,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -2120,7 +2120,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { @@ -2258,7 +2258,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -2282,7 +2282,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Markup/Baml2006/Baml2006Reader.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Markup/Baml2006/Baml2006Reader.cs index 1452e06d250..10b3e924377 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Markup/Baml2006/Baml2006Reader.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Markup/Baml2006/Baml2006Reader.cs @@ -1441,7 +1441,7 @@ private System.Windows.Media.Int32Collection GetInt32Collection() int capacity = reader.ReadInt32(); if (capacity < 0) { - throw new ArgumentException(SR.Get(SRID.IntegerCollectionLengthLessThanZero, new object[0])); + throw new ArgumentException(SR.Get(SRID.IntegerCollectionLengthLessThanZero, Array.Empty())); } System.Windows.Media.Int32Collection ints = new System.Windows.Media.Int32Collection(capacity); switch (type) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Markup/Baml2006/Baml2006SchemaContext.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Markup/Baml2006/Baml2006SchemaContext.cs index 32a74f37a18..13d76c2c884 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Markup/Baml2006/Baml2006SchemaContext.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Markup/Baml2006/Baml2006SchemaContext.cs @@ -29,7 +29,7 @@ public Baml2006SchemaContext(Assembly localAssembly): } internal Baml2006SchemaContext(Assembly localAssembly, XamlSchemaContext parentSchemaContext) - : base(new Assembly[0]) + : base(Array.Empty()) { _localAssembly = localAssembly; _parentSchemaContext = parentSchemaContext; diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/ControlType.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/ControlType.cs index a92c755462e..2edb441a1b5 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/ControlType.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/ControlType.cs @@ -64,20 +64,20 @@ internal static ControlType Register(AutomationIdentifierConstants.ControlTypes internal static ControlType Register(AutomationIdentifierConstants.ControlTypes id, string programmaticName, string stId, AutomationPattern[][] requiredPatternsSets) { - return ControlType.Register(id, programmaticName, stId, new AutomationProperty[0], new AutomationPattern[0], requiredPatternsSets); + return ControlType.Register(id, programmaticName, stId, Array.Empty(), Array.Empty(), requiredPatternsSets); } //Never supported patterns and required patterns are set to an empty array internal static ControlType Register(AutomationIdentifierConstants.ControlTypes id, string programmaticName, string stId, AutomationProperty[] requiredProperties) { - return ControlType.Register(id, programmaticName, stId, requiredProperties, new AutomationPattern[0], new AutomationPattern[0][]); + return ControlType.Register(id, programmaticName, stId, requiredProperties, Array.Empty(), new AutomationPattern[0][]); } //Required patterns, never supported patterns and required properties are set to an empty array internal static ControlType Register(AutomationIdentifierConstants.ControlTypes id, string programmaticName, string stId) { - return ControlType.Register(id, programmaticName, stId, new AutomationProperty[0], new AutomationPattern[0], new AutomationPattern[0][]); + return ControlType.Register(id, programmaticName, stId, Array.Empty(), Array.Empty(), new AutomationPattern[0][]); } #endregion diff --git a/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Generated/AvTraceMessages.cs b/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Generated/AvTraceMessages.cs index 0e7f4e77bb2..b5d51133c8c 100644 --- a/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Generated/AvTraceMessages.cs +++ b/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Generated/AvTraceMessages.cs @@ -82,7 +82,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -106,7 +106,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { @@ -210,7 +210,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -234,7 +234,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { @@ -310,7 +310,7 @@ static public void Trace( TraceEventType type, AvTraceDetails traceDetails, para /// These help delay allocation of object array static public void Trace( TraceEventType type, AvTraceDetails traceDetails ) { - _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.Trace( type, traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void Trace( TraceEventType type, AvTraceDetails traceDetails, object p1 ) { @@ -334,7 +334,7 @@ static public void TraceActivityItem( AvTraceDetails traceDetails, params Object /// These help delay allocation of object array static public void TraceActivityItem( AvTraceDetails traceDetails ) { - _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, new object[0] ); + _avTrace.TraceStartStop( traceDetails.Id, traceDetails.Message, traceDetails.Labels, Array.Empty() ); } static public void TraceActivityItem( AvTraceDetails traceDetails, object p1 ) { diff --git a/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/IO/Packaging/Compoundfile/DataSpaceManager.cs b/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/IO/Packaging/Compoundfile/DataSpaceManager.cs index 9a4deb7ecea..83d813f7df7 100644 --- a/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/IO/Packaging/Compoundfile/DataSpaceManager.cs +++ b/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/IO/Packaging/Compoundfile/DataSpaceManager.cs @@ -828,7 +828,7 @@ internal Stream GetPrimaryInstanceStreamOf( string transformLabel ) { targetInstance.transformPrimaryStream = new DirtyStateTrackingStream (new MemoryStream - (new byte[0], + (Array.Empty(), false /* Not writable */)); } else