Update demand.c

Fixing bug in get_category_name when category_name is NULL
This commit is contained in:
michaeltryby
2019-04-22 13:08:43 -04:00
parent c98a43e72c
commit 60853ecb15

View File

@@ -67,7 +67,7 @@ demand_data_t *create_demand_data(double base_demand, int pattern_index, const c
void delete_demand_data(void *data) void delete_demand_data(void *data)
{ {
// TODO: This cast is a problem! // TODO: This cast is a problem!
demand_data_t *demand_data = *(demand_data_t **)data; demand_data_t *demand_data = *(demand_data_t **)data;
if (demand_data->category_name) if (demand_data->category_name)
@@ -119,7 +119,12 @@ void set_pattern_index(list_node_t *lnode, int pattern_index)
char *get_category_name(list_node_t *lnode) char *get_category_name(list_node_t *lnode)
// Be advised: caller must free memory returned // Be advised: caller must free memory returned
{ {
return strdup(get_demand_data(lnode)->category_name); char *temp = get_demand_data(lnode)->category_name;
if (temp)
return strdup(temp);
else
return NULL;
} }
void set_category_name(list_node_t *lnode, const char *category_name) void set_category_name(list_node_t *lnode, const char *category_name)