From f553f1a5e29711c9739ae11224dfe62016372bbd Mon Sep 17 00:00:00 2001 From: Nathan Fritzer Date: Mon, 19 May 2025 20:44:43 -0600 Subject: [PATCH] fix(CarbonCore): add OpenDefaultComponent stub --- .../CoreServices/include/CarbonCore/Components.h | 2 ++ .../CoreServices/src/CarbonCore/Components.cpp | 11 +++++++++++ 2 files changed, 13 insertions(+) diff --git a/src/frameworks/CoreServices/include/CarbonCore/Components.h b/src/frameworks/CoreServices/include/CarbonCore/Components.h index 004c0bcce..e1780827b 100644 --- a/src/frameworks/CoreServices/include/CarbonCore/Components.h +++ b/src/frameworks/CoreServices/include/CarbonCore/Components.h @@ -138,6 +138,8 @@ long CountComponents(ComponentDescription* desc); OSErr OpenAComponent(Component comp, ComponentInstance* out); ComponentInstance OpenComponent(Component comp); +ComponentInstance OpenDefaultComponent(OSType componentType, OSType componentSubType); + OSErr CloseComponent(ComponentInstance inst); Component RegisterComponent(ComponentDescription *cd, ComponentRoutineUPP componentEntryPoint, SInt16 global, diff --git a/src/frameworks/CoreServices/src/CarbonCore/Components.cpp b/src/frameworks/CoreServices/src/CarbonCore/Components.cpp index 39c6315be..1c5ac447e 100644 --- a/src/frameworks/CoreServices/src/CarbonCore/Components.cpp +++ b/src/frameworks/CoreServices/src/CarbonCore/Components.cpp @@ -22,6 +22,11 @@ along with Darling. If not, see . #include #include "ComponentManager.h" +static int verbose = 0; +__attribute__((constructor)) static void initme(void) { + verbose = getenv("STUB_VERBOSE") != NULL; +} + Component FindNextComponent(Component prev, ComponentDescription* desc) { std::vector components = ComponentManager::instance()->findMatching(desc); @@ -85,6 +90,12 @@ ComponentInstance OpenComponent(Component comp) return nullptr; } +ComponentInstance OpenDefaultComponent(OSType componentType, OSType componentSubType) +{ + if (verbose) puts("STUB: OpenDefaultComponent called"); + return nullptr; +} + OSErr CloseComponent(ComponentInstance inst) { return ComponentManager::instance()->dispose(inst); -- 2.51.2