Bug Report T1274842
Visible to All Users

Export to PDF on Linux - Presence of duplicated font family names causes SkiaSystemFontCollection to crash

created a month ago
Call Stack
An item with the same key has already been added. Key: "ETL fixed" at System.ArgumentException: Item with the same key has already been fixed. at System.Collections.Generic.Dictionary`2.TryInsert(TKey key, TValue value, InsertionBehavior behavior) at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value) at DevExpress.Drawing.Skia.Internal.SkiaSystemFontCollection.get_Item(String name) at DevExpress.Drawing.Skia.Internal.SkiaSystemFontCollection.get_Item(Int32 index) at DevExpress.Drawing.Skia.Internal.SkiaSystemFontCollection.get_Item(Boolean useDefaultConstructor) at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication) at System.Lazy`1.CreateValue() at DevExpress.Drawing.Skia.Internal.SkiaSystemFontCollection.get_Item(Int32 index) at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode) at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor) at System.Lazy`1.CreateValue() at DevExpress.Drawing.Internal.Fonts.DXFontEngine.GetFontInfo(String name) at DevExpress.Drawing.Internal.Fonts.DXFontEngine.GetFontInfo(Int32 index) at DevExpress.XtraReports.Web.Native.ClientRendering.JSContentGeneratorBase.GenerateInternal(StringBuilder sb, String localVarName, ReportDesignerModel model, ClientSideModelSettings settings) at DevExpress.XtraReports.Web.Native.ClientRendering.JSContentGeneratorBase.GenerateJson(StringBuilder sb, ReportDesignerModel model, ClientSideModelSettings settings) at DevExpress.XtraReports.Web.ReportDesigner.Native.Services.ReportDesignerModelSerializer.GetJsonModelScript(ReportDesignerModel reportDesignerModel, ClientSideModelSettings settings) at DevExpress.XtraReports.Web.ReportDesigner.Native.Services.ReportDesignerModelSerializer.GetJsonModelScript(ReportDesignerModel reportDesignerModel) at ReportsProvider.Reports.DevExpress.Controllers.Designer.GenerateReportUiController.GenerateModel(String reportUrl) in /source/src/Provider.Reports.DevExpress/Controllers/DesignerSetupController.cs:line 43 at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync() at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync() at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>d__26.MoveNext() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeNextExceptionFilterAsync()

Answers approved by DevExpress Support

created 24 days ago

We have addressed the issue described in this ticket and will include a fix in our next maintenance update. Should you need to apply our fix prior to official release, you can request a hotfix here.

Important Notes:

  • Hotfixes may be unavailable for Early Access/Beta builds or updates set for release within a week.
  • .NET only: in the NuGet Package Manager, use your personal NuGet feed and check the "Include prerelease" option to view the hotfix package in the "Updates" tab.
    Show previous comments (1)
    Yaroslav (DevExpress Support) 19 days ago

      Hi,

      We'll propagate the required code changes to v24.1 shortly (this ticket will be updated accordingly).
      Thank you.

        Hi, Yaroslav.

        I hope you are doing well.

        When v24.1.11 will be officially released?

        Yaroslav (DevExpress Support) 5 days ago

          Hi,

          There's no established data for this next maintenance release yet. Since we just released v24.1.10, I'd say it will take a month for the new maintenance build to arrive (Content Delivery Model). Of course, a new intermediate hofix (daily build that passes some automated checks) will be available much sooner (within a week or so). You can find it at the following link: https://downloads.devexpress.com/HotFixes/DXP/v24.1. The latest three numbers corresponds to the day of the year: https://www.epochconverter.com/days/2025. Any value higher than 51 should contain the required code changes.

          Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

          Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.