From cb6a0c2ad6ae53d524276a44ef92a192d2450eeb Mon Sep 17 00:00:00 2001 From: sakumisu <1203593632@qq.com> Date: Sat, 7 Sep 2024 22:42:27 +0800 Subject: [PATCH] chore(cherrymp): add license --- third_party/cherrymp/chry_mempool.c | 10 +++++++++- third_party/cherrymp/chry_mempool.h | 14 +++++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/third_party/cherrymp/chry_mempool.c b/third_party/cherrymp/chry_mempool.c index 7ed0a2eb..71e7aced 100644 --- a/third_party/cherrymp/chry_mempool.c +++ b/third_party/cherrymp/chry_mempool.c @@ -1,3 +1,8 @@ +/* + * Copyright (c) 2024, sakumisu + * + * SPDX-License-Identifier: Apache-2.0 + */ #include "chry_mempool.h" int chry_mempool_create(struct chry_mempool *pool, void *block, uint32_t block_size, uint32_t block_count) @@ -8,7 +13,10 @@ int chry_mempool_create(struct chry_mempool *pool, void *block, uint32_t block_s ringbuf = usb_osal_malloc(sizeof(uintptr_t) * block_count); memset(ringbuf, 0, sizeof(uintptr_t) * block_count); - chry_ringbuffer_init(&pool->rb, ringbuf, sizeof(uintptr_t) * block_count); + if (chry_ringbuffer_init(&pool->rb, ringbuf, sizeof(uintptr_t) * block_count) == -1) { + usb_osal_free(ringbuf); + return -1; + } for (uint32_t i = 0; i < block_count; i++) { addr = ((uintptr_t)block + i * block_size); diff --git a/third_party/cherrymp/chry_mempool.h b/third_party/cherrymp/chry_mempool.h index daebdd37..a3824b79 100644 --- a/third_party/cherrymp/chry_mempool.h +++ b/third_party/cherrymp/chry_mempool.h @@ -1,7 +1,11 @@ +/* + * Copyright (c) 2024, sakumisu + * + * SPDX-License-Identifier: Apache-2.0 + */ #ifndef CHRY_MEMPOOL_H #define CHRY_MEMPOOL_H -#include "usb_config.h" #include "usb_osal.h" #include "chry_ringbuffer.h" @@ -10,10 +14,18 @@ struct chry_mempool { usb_osal_mq_t mq; }; +#ifdef __cplusplus +extern "C" { +#endif + int chry_mempool_create(struct chry_mempool *pool, void *block, uint32_t block_size, uint32_t block_count); uintptr_t *chry_mempool_alloc(struct chry_mempool *pool); int chry_mempool_free(struct chry_mempool *pool, uintptr_t *item); int chry_mempool_send(struct chry_mempool *pool, uintptr_t *item); int chry_mempool_recv(struct chry_mempool *pool, uintptr_t **item, uint32_t timeout); +#ifdef __cplusplus +} +#endif + #endif \ No newline at end of file