Skip to content

Commit dc96d1d

Browse files
authored
Merge pull request #75 from cossacklabs/vixentael/null
null pointers after free them
2 parents 1f5e9b2 + 2118989 commit dc96d1d

File tree

5 files changed

+10
-0
lines changed

5 files changed

+10
-0
lines changed

src/common/buffer.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,7 @@ int buffer_destroy(buffer_t **buffer) {
191191
(*buffer)->data_.data = NULL;
192192
}
193193
free(*buffer);
194+
*buffer = NULL;
194195
return BUFFER_SUCCESS;
195196
}
196197

src/common/hm_hash_table.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ uint32_t hm_hash_table_entry_destroy(hm_hash_table_entry_t *entry) {
6666
free(entry->key);
6767
free(entry->val);
6868
free(entry);
69+
entry = NULL;
6970
return HM_SUCCESS;
7071
}
7172

src/key_store/functions.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,8 @@ uint32_t hm_key_store_del_rtoken(
173173
&test_id, &test_id_length)) {
174174
return HM_FAIL;
175175
}
176+
free(test_token);
177+
free(test_id);
176178
return db->del_rtoken(db->user_data, block_id, block_id_length, user_id, user_id_length, owner_id, owner_id_length);
177179
}
178180

@@ -203,6 +205,8 @@ uint32_t hm_key_store_del_wtoken(
203205
&test_id, &test_id_length)) {
204206
return HM_FAIL;
205207
}
208+
free(test_token);
209+
free(test_id);
206210
return db->del_wtoken(db->user_data, block_id, block_id_length, user_id, user_id_length, owner_id, owner_id_length);
207211
}
208212

src/mid_hermes_ll/mid_hermes_ll_buffer.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,8 @@ hermes_status_t mid_hermes_ll_buffer_destroy(mid_hermes_ll_buffer_t** buffer){
102102
HERMES_CHECK_IN_PARAM(*buffer);
103103
free((*buffer)->data);
104104
free(*buffer);
105+
(*buffer)->data=NULL;
106+
(*buffer)->length=0;
105107
*buffer=NULL;
106108
return HM_SUCCESS;
107109
}

src/rpc/param_pack.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@ uint32_t hm_param_pack_destroy(hm_param_pack_t** pack){
106106
}
107107
if((*pack)->readed){
108108
free((*pack)->whole_data);
109+
(*pack)->whole_data = NULL;
109110
} else {
110111
while((*pack)->param_count){
111112
switch((*pack)->nodes[(*pack)->param_count-1].type){
@@ -120,6 +121,7 @@ uint32_t hm_param_pack_destroy(hm_param_pack_t** pack){
120121
}
121122
}
122123
free(*pack);
124+
*pack=NULL;
123125
return HM_SUCCESS;
124126
}
125127

0 commit comments

Comments
 (0)