Message ID | 20201110042451.71288-1-inga.stotland@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [BlueZ] mesh: Fix memory leak when failing to load a node | expand |
This is automated email and please do not reply to this email! Dear submitter, Thank you for submitting the patches to the linux bluetooth mailing list. This is a CI test results with your patch series: PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=380863 ---Test result--- ############################## Test: CheckPatch - PASS ############################## Test: CheckGitLint - PASS ############################## Test: CheckBuild - PASS ############################## Test: MakeCheck - PASS --- Regards, Linux Bluetooth
Applied On Mon, 2020-11-09 at 20:24 -0800, Inga Stotland wrote: > This fixes a memory leak that may occur on unsuccessful element > initialization from storage. > --- > mesh/node.c | 7 ++----- > 1 file changed, 2 insertions(+), 5 deletions(-) > > diff --git a/mesh/node.c b/mesh/node.c > index 11b0c9442..35293e0f0 100644 > --- a/mesh/node.c > +++ b/mesh/node.c > @@ -326,16 +326,13 @@ static bool add_element_from_storage(struct mesh_node *node, > > ele->idx = db_ele->index; > ele->location = db_ele->location; > - > - > - if (!ele->models) > - ele->models = l_queue_new(); > + ele->models = l_queue_new(); > + l_queue_push_tail(node->elements, ele); > > if (!mesh_model_add_from_storage(node, ele->idx, ele->models, > db_ele->models)) > return false; > > - l_queue_push_tail(node->elements, ele); > return true; > } >
diff --git a/mesh/node.c b/mesh/node.c index 11b0c9442..35293e0f0 100644 --- a/mesh/node.c +++ b/mesh/node.c @@ -326,16 +326,13 @@ static bool add_element_from_storage(struct mesh_node *node, ele->idx = db_ele->index; ele->location = db_ele->location; - - - if (!ele->models) - ele->models = l_queue_new(); + ele->models = l_queue_new(); + l_queue_push_tail(node->elements, ele); if (!mesh_model_add_from_storage(node, ele->idx, ele->models, db_ele->models)) return false; - l_queue_push_tail(node->elements, ele); return true; }