diff --git a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt
index 7bba6203c8..2701be6ff0 100644
--- a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt
+++ b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt
@@ -1818,6 +1818,7 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"
"../../../../../modules/juce_graphics/fonts/juce_Font.cpp"
"../../../../../modules/juce_graphics/fonts/juce_Font.h"
+ "../../../../../modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"
@@ -4280,6 +4281,7 @@ set_source_files_properties(
"../../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"
"../../../../../modules/juce_graphics/fonts/juce_Font.cpp"
"../../../../../modules/juce_graphics/fonts/juce_Font.h"
+ "../../../../../modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"
diff --git a/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj
index 227e49d614..5eec35f268 100644
--- a/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj
+++ b/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj
@@ -4133,6 +4133,7 @@
+
diff --git a/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj.filters
index 1b85c066f5..491d11e512 100644
--- a/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj.filters
+++ b/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj.filters
@@ -7131,6 +7131,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj
index a429d8a6ee..e27808acf1 100644
--- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj
+++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj
@@ -4133,6 +4133,7 @@
+
diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters
index 417227b5d7..90e8fbeb7f 100644
--- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters
+++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters
@@ -7131,6 +7131,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj
index 12b12d22fd..7703651909 100644
--- a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj
+++ b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj
@@ -4133,6 +4133,7 @@
+
diff --git a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters
index 221d71b455..f1a7954b7e 100644
--- a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters
+++ b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters
@@ -7131,6 +7131,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt b/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt
index 27cb8b0bb5..ee894e8676 100644
--- a/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt
+++ b/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt
@@ -1580,6 +1580,7 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"
"../../../../../modules/juce_graphics/fonts/juce_Font.cpp"
"../../../../../modules/juce_graphics/fonts/juce_Font.h"
+ "../../../../../modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"
@@ -3724,6 +3725,7 @@ set_source_files_properties(
"../../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"
"../../../../../modules/juce_graphics/fonts/juce_Font.cpp"
"../../../../../modules/juce_graphics/fonts/juce_Font.h"
+ "../../../../../modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"
diff --git a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj
index 108476beb1..29a78ff88e 100644
--- a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj
+++ b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj
@@ -3604,6 +3604,7 @@
+
diff --git a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters
index 5ef2e5aa9f..d1b6ca7e51 100644
--- a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters
+++ b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters
@@ -6186,6 +6186,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt
index 50243accda..5836a2c403 100644
--- a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt
+++ b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt
@@ -1710,6 +1710,7 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"
"../../../../../modules/juce_graphics/fonts/juce_Font.cpp"
"../../../../../modules/juce_graphics/fonts/juce_Font.h"
+ "../../../../../modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"
@@ -4007,6 +4008,7 @@ set_source_files_properties(
"../../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"
"../../../../../modules/juce_graphics/fonts/juce_Font.cpp"
"../../../../../modules/juce_graphics/fonts/juce_Font.h"
+ "../../../../../modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj
index 7b28dcba9d..7274a0ec43 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj
+++ b/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj
@@ -3837,6 +3837,7 @@
+
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj.filters
index 1c72539d53..ad9cc580ec 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj.filters
+++ b/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj.filters
@@ -6621,6 +6621,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj
index da62c23ba6..59d788a62a 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj
+++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj
@@ -3837,6 +3837,7 @@
+
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters
index 7d0a7f98c6..b7958f9f03 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters
+++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters
@@ -6621,6 +6621,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj
index faa94ca686..4346f8bab0 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj
+++ b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj
@@ -3837,6 +3837,7 @@
+
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters
index eb52b10bf9..003ef7864b 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters
+++ b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters
@@ -6621,6 +6621,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt b/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt
index cb6ffd1baa..acea45e7ff 100644
--- a/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt
+++ b/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt
@@ -1599,6 +1599,7 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"
"../../../../../modules/juce_graphics/fonts/juce_Font.cpp"
"../../../../../modules/juce_graphics/fonts/juce_Font.h"
+ "../../../../../modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"
@@ -3823,6 +3824,7 @@ set_source_files_properties(
"../../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"
"../../../../../modules/juce_graphics/fonts/juce_Font.cpp"
"../../../../../modules/juce_graphics/fonts/juce_Font.h"
+ "../../../../../modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"
"../../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"
diff --git a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj
index f870832a54..1116fa49a0 100644
--- a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj
+++ b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj
@@ -3702,6 +3702,7 @@
+
diff --git a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters
index be3fc23566..12796b1747 100644
--- a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters
+++ b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters
@@ -6348,6 +6348,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj
index d217209b60..0e7f58e592 100644
--- a/extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj
+++ b/extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj
@@ -2519,6 +2519,7 @@
+
diff --git a/extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj.filters
index 020c3e3fde..3253030f02 100644
--- a/extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj.filters
+++ b/extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj.filters
@@ -4326,6 +4326,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj
index e1ce2e8eaf..9c034564dd 100644
--- a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj
+++ b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj
@@ -2519,6 +2519,7 @@
+
diff --git a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters
index e8c6c9ad93..27ff30dbc5 100644
--- a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters
+++ b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters
@@ -4326,6 +4326,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj
index 47fd4f8bcc..a6fd888f10 100644
--- a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj
+++ b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj
@@ -2519,6 +2519,7 @@
+
diff --git a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters
index f923da4fb9..44c0153f5e 100644
--- a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters
+++ b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters
@@ -4326,6 +4326,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj
index 91969661ba..aa44f67a72 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj
+++ b/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj
@@ -3933,6 +3933,7 @@
+
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj.filters
index 401596f03a..dce8dbe962 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj.filters
+++ b/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj.filters
@@ -6735,6 +6735,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj
index 5b9a7d050c..5b513e4bbf 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj
+++ b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj
@@ -3933,6 +3933,7 @@
+
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters
index c80ef7972b..78aa21314c 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters
+++ b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters
@@ -6735,6 +6735,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj
index a1a3501c8a..60bba34113 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj
+++ b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj
@@ -3933,6 +3933,7 @@
+
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters
index 0439606c15..76c7151150 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters
+++ b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters
@@ -6735,6 +6735,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj
index 98c18883ed..989161a28a 100644
--- a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj
+++ b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj
@@ -3678,6 +3678,7 @@
+
diff --git a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters
index 2470ecace4..868c703321 100644
--- a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters
+++ b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters
@@ -6315,6 +6315,9 @@
JUCE Modules\juce_graphics\fonts
+
+ JUCE Modules\juce_graphics\fonts
+
JUCE Modules\juce_graphics\fonts
diff --git a/modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h b/modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h
new file mode 100644
index 0000000000..cb942e8096
--- /dev/null
+++ b/modules/juce_graphics/fonts/juce_FunctionPointerDestructor.h
@@ -0,0 +1,49 @@
+/*
+ ==============================================================================
+
+ This file is part of the JUCE framework.
+ Copyright (c) Raw Material Software Limited
+
+ JUCE is an open source framework subject to commercial or open source
+ licensing.
+
+ By downloading, installing, or using the JUCE framework, or combining the
+ JUCE framework with any other source code, object code, content or any other
+ copyrightable work, you agree to the terms of the JUCE End User Licence
+ Agreement, and all incorporated terms including the JUCE Privacy Policy and
+ the JUCE Website Terms of Service, as applicable, which will bind you. If you
+ do not agree to the terms of these agreements, we will not license the JUCE
+ framework to you, and you must discontinue the installation or download
+ process and cease use of the JUCE framework.
+
+ JUCE End User Licence Agreement: https://juce.com/legal/juce-8-licence/
+ JUCE Privacy Policy: https://juce.com/juce-privacy-policy
+ JUCE Website Terms of Service: https://juce.com/juce-website-terms-of-service/
+
+ Or:
+
+ You may also use this code under the terms of the AGPLv3:
+ https://www.gnu.org/licenses/agpl-3.0.en.html
+
+ THE JUCE FRAMEWORK IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL
+ WARRANTIES, WHETHER EXPRESSED OR IMPLIED, INCLUDING WARRANTY OF
+ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED.
+
+ ==============================================================================
+*/
+
+namespace juce
+{
+
+template
+struct FunctionPointerDestructor
+{
+ template
+ void operator() (Ptr* ptr) const
+ {
+ if (ptr != nullptr)
+ Fn (ptr);
+ }
+};
+
+} // namespace juce
diff --git a/modules/juce_graphics/juce_graphics.cpp b/modules/juce_graphics/juce_graphics.cpp
index 31ed9b8630..681f339844 100644
--- a/modules/juce_graphics/juce_graphics.cpp
+++ b/modules/juce_graphics/juce_graphics.cpp
@@ -104,6 +104,8 @@
#include
//==============================================================================
+#include "fonts/juce_FunctionPointerDestructor.h"
+
#include "colour/juce_Colour.cpp"
#include "colour/juce_ColourGradient.cpp"
#include "colour/juce_Colours.cpp"