mirror of
https://github.com/Netflix/dial-reference.git
synced 2026-06-08 02:49:58 +00:00
Fix memory leak in dial data. Thanks @vignyzheng for pointing this.
This commit is contained in:
@@ -87,3 +87,15 @@ DIALData *retrieve_dial_data(char *app_name) {
|
||||
return result;
|
||||
}
|
||||
|
||||
void free_dial_data(DIALData **dialData)
|
||||
{
|
||||
DIALData *curNode=NULL;
|
||||
while (*dialData != NULL) {
|
||||
curNode = *dialData;
|
||||
*dialData =curNode->next;
|
||||
|
||||
free(curNode->key);
|
||||
free(curNode->value);
|
||||
free(curNode);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -60,4 +60,6 @@ DIALData *retrieve_dial_data(char *app_name);
|
||||
|
||||
void set_dial_data_dir(const char *data_dir);
|
||||
|
||||
void free_dial_data(DIALData **dialData);
|
||||
|
||||
#endif /* SRC_SERVER_DIAL_DATA_H_ */
|
||||
|
||||
@@ -383,9 +383,11 @@ static void handle_dial_data(struct mg_connection *conn,
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
free_dial_data(&app->dial_data);
|
||||
|
||||
app->dial_data = parse_params(body);
|
||||
store_dial_data(app->name, app->dial_data);
|
||||
free(app->dial_data);
|
||||
|
||||
mg_printf(conn, "HTTP/1.1 200 OK\r\n"
|
||||
"Access-Control-Allow-Origin: %s\r\n"
|
||||
|
||||
Reference in New Issue
Block a user