File tree Expand file tree Collapse file tree 2 files changed +11
-1
lines changed
components/esp_rainmaker/src/core Expand file tree Collapse file tree 2 files changed +11
-1
lines changed Original file line number Diff line number Diff line change 27
27
#include "esp_rmaker_internal.h"
28
28
29
29
static const char * TAG = "esp_rmaker_node" ;
30
+ static bool node_created ;
30
31
31
32
static void esp_rmaker_node_info_free (esp_rmaker_node_info_t * info )
32
33
{
@@ -84,6 +85,7 @@ esp_err_t esp_rmaker_node_delete(const esp_rmaker_node_t *node)
84
85
_esp_rmaker_device_t * next_device = device -> next ;
85
86
device -> parent = NULL ;
86
87
esp_rmaker_device_delete ((esp_rmaker_device_t * )device );
88
+ free (device );
87
89
device = next_device ;
88
90
}
89
91
/* Node ID is created in the context of esp_rmaker_init and just assigned
@@ -95,14 +97,15 @@ esp_err_t esp_rmaker_node_delete(const esp_rmaker_node_t *node)
95
97
if (_node -> info ) {
96
98
esp_rmaker_node_info_free (_node -> info );
97
99
}
100
+ free (_node );
101
+ node_created = false;
98
102
return ESP_OK ;
99
103
}
100
104
return ESP_ERR_INVALID_ARG ;
101
105
}
102
106
103
107
esp_rmaker_node_t * esp_rmaker_node_create (const char * name , const char * type )
104
108
{
105
- static bool node_created ;
106
109
if (node_created ) {
107
110
ESP_LOGE (TAG , "Node has already been created. Cannot create another" );
108
111
return NULL ;
Original file line number Diff line number Diff line change @@ -533,6 +533,13 @@ esp_err_t esp_rmaker_param_delete(const esp_rmaker_param_t *param)
533
533
if (_param -> ui_type ) {
534
534
free (_param -> ui_type );
535
535
}
536
+ if (_param -> bounds ) {
537
+ free (_param -> bounds );
538
+ }
539
+ if (_param -> val .type == RMAKER_VAL_TYPE_STRING || _param -> val .type == RMAKER_VAL_TYPE_OBJECT ||
540
+ _param -> val .type == RMAKER_VAL_TYPE_ARRAY ) {
541
+ free (_param -> val .val .s );
542
+ }
536
543
free (_param );
537
544
return ESP_OK ;
538
545
}
You can’t perform that action at this time.
0 commit comments