mono / libgdiplus

C-based implementation of the GDI+ API
http://www.mono-project.com/
MIT License
334 stars 171 forks source link

Reinstate support for Pango 1.44+ #605

Closed filipnavara closed 4 years ago

akoeplinger commented 4 years ago

I'm getting this native crash when running with pango 1.44 on mono-netcore on macOS: https://gist.github.com/akoeplinger/156782f7e7063e028d4c7f078663c965

filipnavara commented 4 years ago

I'll check it.

filipnavara commented 4 years ago

It didn't crash on my machine yet. I do, however, get some errors:

System.Drawing.Imaging.Tests.EncoderParameterTests.Ctor_Encoder_NegativeNumberOfValues_Type_Value_OutOfMemoryException(numberOfValues: -1) [STARTING]
dotnet(22637,0x11b150d40) malloc: can't allocate region
*** mach_vm_map(size=18446744071562067968) failed (error code=3)
dotnet(22637,0x11b150d40) malloc: *** set a breakpoint in malloc_error_break to debug
    System.Drawing.Imaging.Tests.EncoderParameterTests.Ctor_Encoder_NegativeNumberOfValues_Type_Value_OutOfMemoryException(numberOfValues: -1) [FINISHED] Time: 0.0006159s

and

    System.Drawing.Tests.FontFamilyTests.Families_Get_ReturnsExpected [FAIL]
      Assert.Equal() Failure
                ↓ (pos 0)
      Expected: Noto Sans Inscriptional Parthia
      Actual:   Verdana
                ↑ (pos 0)
      Stack Trace:
        /_/src/System.Drawing.Common/tests/FontFamilyTests.cs(126,0): at System.Drawing.Tests.FontFamilyTests.Families_Get_ReturnsExpected()
        /Users/filipnavara/Documents/mono/netcore/System.Private.CoreLib/src/System.Reflection/RuntimeMethodInfo.cs(339,0): at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
akoeplinger commented 4 years ago

Let's see if it crashes in CI.

/azp run

akoeplinger commented 4 years ago

/azp run

azure-pipelines[bot] commented 4 years ago
Azure Pipelines successfully started running 1 pipeline(s).
filipnavara commented 4 years ago

It works on the CI but I still want to look into the failures locally.

akoeplinger commented 4 years ago

Turns out my issue was having XQuartz installed and libgdiplus built against it, which causes mismatches between cairo from X11 and the one from Homebrew.

filipnavara commented 4 years ago

The "Noto Sans Inscriptional Parthia" is orthogonal to this PR. I still plan to look into it but it should not be a blocker.