10a7ce71fSopenharmony_ci/* 20a7ce71fSopenharmony_ci * Copyright (c) 2022 HiSilicon (Shanghai) Technologies CO., LIMITED. 30a7ce71fSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 40a7ce71fSopenharmony_ci * you may not use this file except in compliance with the License. 50a7ce71fSopenharmony_ci * You may obtain a copy of the License at 60a7ce71fSopenharmony_ci * 70a7ce71fSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 80a7ce71fSopenharmony_ci * 90a7ce71fSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 100a7ce71fSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 110a7ce71fSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 120a7ce71fSopenharmony_ci * See the License for the specific language governing permissions and 130a7ce71fSopenharmony_ci * limitations under the License. 140a7ce71fSopenharmony_ci */ 150a7ce71fSopenharmony_ci 160a7ce71fSopenharmony_ci#include <stdint.h> 170a7ce71fSopenharmony_ci#include <cJSON.h> 180a7ce71fSopenharmony_ci#include <hi_mem.h> 190a7ce71fSopenharmony_ci 200a7ce71fSopenharmony_cistatic void *cJsonMalloc(size_t sz) 210a7ce71fSopenharmony_ci{ 220a7ce71fSopenharmony_ci return hi_malloc(0, sz); 230a7ce71fSopenharmony_ci} 240a7ce71fSopenharmony_ci 250a7ce71fSopenharmony_cistatic void cJsonFree(const char *p) 260a7ce71fSopenharmony_ci{ 270a7ce71fSopenharmony_ci hi_free(0, p); 280a7ce71fSopenharmony_ci} 290a7ce71fSopenharmony_ci 300a7ce71fSopenharmony_civoid cJsonInit(void) 310a7ce71fSopenharmony_ci{ 320a7ce71fSopenharmony_ci cJSON_Hooks hooks; 330a7ce71fSopenharmony_ci hooks.malloc_fn = cJsonMalloc; 340a7ce71fSopenharmony_ci hooks.free_fn = cJsonFree; 350a7ce71fSopenharmony_ci cJSON_InitHooks(&hooks); 360a7ce71fSopenharmony_ci 370a7ce71fSopenharmony_ci return; 380a7ce71fSopenharmony_ci}