From 21193cf028bde9aee5f84df7b9abd7b0b2b15d23 Mon Sep 17 00:00:00 2001 From: Jihoi Kim Date: Wed, 14 May 2025 20:42:37 +0900 Subject: [PATCH] Fix sample code in documentation Signed-off-by: Jihoi Kim --- include/service.h | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/include/service.h b/include/service.h index 027eb0a..4dddd0c 100644 --- a/include/service.h +++ b/include/service.h @@ -112,11 +112,15 @@ typedef struct { #undef EXPORT #define EXPORT __attribute__((visibility("default"))) +service_h __service; + static void ServiceCreateCb(service_h service, void* user_data) { + __service = service; // ... } static void ServiceDestroyCb(service_h service, void* user_data) { + __service = nullptr; // ... } @@ -141,7 +145,9 @@ extern "C" int USD_MOD_INIT(const char* name) { return 0; } -extern "C" void USD_MOD_SHUTDOWN(void) { +extern "C" void USD_MOD_SHUTDOWN(const char* name) { + LOGD("USD_MOD_SHUTDOWN"); + service_unregister(name); // ... } * @endcode @@ -170,18 +176,16 @@ int service_register(const char *name, service_lifecycle_callback_s *callback, static char* __name; -extern "C" service_h USD_MOD_INIT(const char* name) { +extern "C" int USD_MOD_INIT(const char* name) { LOGD("USD_MOD_INIT. name=%s", name); - __name = strdup(name); // ... - return service; + return 0; } -extern "C" void USD_MOD_SHUTDOWN(void) { +extern "C" void USD_MOD_SHUTDOWN(const char* name) { LOGD("USD_MOD_SHUTDOWN"); - service_unregister(__name); - free(__name); - __name = nullptr; + service_unregister(name); + // ... } * @endcode */ @@ -215,18 +219,16 @@ static void ServiceDestroyCb(service_h service, void* user_data) { // ... } -extern "C" service_h USD_MOD_INIT(const char* name) { +extern "C" int USD_MOD_INIT(const char* name) { LOGD("USD_MOD_INIT. name=%s", name); // ... - return service; + return 0; } -extern "C" void USD_MOD_SHUTDOWN(void) { +extern "C" void USD_MOD_SHUTDOWN(const char* name) { LOGD("USD_MOD_SHUTDOWN"); - if (__service) { - service_quit(__service); - __service = nullptr; - } + service_unregister(name); + // ... } * @endcode */ @@ -290,13 +292,15 @@ void SendMessage(const char* message) { bundle_free(envelope); } -extern "C" service_h USD_MOD_INIT(const char* name) { +extern "C" int USD_MOD_INIT(const char* name) { LOGD("USD_MOD_INIT. name=%s", name); // ... - return service; + return 0; } -extern "C" void USD_MOD_SHUTDOWN(void) { +extern "C" void USD_MOD_SHUTDOWN(const char* name) { + LOGD("USD_MOD_SHUTDOWN"); + service_unregister(name); // ... } * @endcode -- 2.34.1