Skip to content

Commit 0426624

Browse files
committed
refactor: Assign malloc return to a local variable first.
1 parent afc38f2 commit 0426624

32 files changed

+218
-153
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
bc830120a87517f830eb85494b769c523bd1696328938d46e9eac1eefea61d38 /usr/local/bin/tox-bootstrapd
1+
d5061af781d04d17bf26174c129b6149e0c8a120ef41133a51a8a7cc5e571e37 /usr/local/bin/tox-bootstrapd

toxav/msi.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -587,7 +587,7 @@ static MSICall *new_call(MSISession *session, uint32_t friend_number)
587587
session->calls_tail = friend_number;
588588
session->calls_head = friend_number;
589589
} else if (session->calls_tail < friend_number) { /* Appending */
590-
MSICall **tmp = (MSICall **)realloc(session->calls, sizeof(MSICall *) * (friend_number + 1));
590+
MSICall **tmp = (MSICall **)realloc(session->calls, (friend_number + 1) * sizeof(MSICall *));
591591

592592
if (tmp == nullptr) {
593593
free(rc);

toxav/toxav.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1284,7 +1284,7 @@ static ToxAVCall *call_new(ToxAV *av, uint32_t friend_number, Toxav_Err_Call *er
12841284
av->calls_tail = friend_number;
12851285
av->calls_head = friend_number;
12861286
} else if (av->calls_tail < friend_number) { /* Appending */
1287-
ToxAVCall **tmp = (ToxAVCall **)realloc(av->calls, sizeof(ToxAVCall *) * (friend_number + 1));
1287+
ToxAVCall **tmp = (ToxAVCall **)realloc(av->calls, (friend_number + 1) * sizeof(ToxAVCall *));
12881288

12891289
if (tmp == nullptr) {
12901290
pthread_mutex_destroy(call->toxav_call_mutex);

toxcore/DHT.c

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -448,8 +448,8 @@ int dht_create_packet(const Memory *mem, const Random *rng,
448448
const uint8_t *plain, size_t plain_length,
449449
uint8_t *packet, size_t length)
450450
{
451-
uint8_t *encrypted = (uint8_t *)mem_balloc(mem, plain_length + CRYPTO_MAC_SIZE);
452451
uint8_t nonce[CRYPTO_NONCE_SIZE];
452+
uint8_t *encrypted = (uint8_t *)mem_balloc(mem, plain_length + CRYPTO_MAC_SIZE);
453453

454454
if (encrypted == nullptr) {
455455
return -1;
@@ -2908,23 +2908,27 @@ static State_Load_Status dht_load_state_callback(void *outer, const uint8_t *dat
29082908
}
29092909

29102910
mem_delete(dht->mem, dht->loaded_nodes_list);
2911+
29112912
// Copy to loaded_clients_list
2912-
dht->loaded_nodes_list = (Node_format *)mem_valloc(dht->mem, MAX_SAVED_DHT_NODES, sizeof(Node_format));
2913+
Node_format *nodes = (Node_format *)mem_valloc(dht->mem, MAX_SAVED_DHT_NODES, sizeof(Node_format));
29132914

2914-
if (dht->loaded_nodes_list == nullptr) {
2915+
if (nodes == nullptr) {
29152916
LOGGER_ERROR(dht->log, "could not allocate %u nodes", MAX_SAVED_DHT_NODES);
29162917
dht->loaded_num_nodes = 0;
29172918
break;
29182919
}
29192920

2920-
const int num = unpack_nodes(dht->loaded_nodes_list, MAX_SAVED_DHT_NODES, nullptr, data, length, false);
2921+
const int num = unpack_nodes(nodes, MAX_SAVED_DHT_NODES, nullptr, data, length, false);
29212922

2922-
if (num > 0) {
2923-
dht->loaded_num_nodes = num;
2924-
} else {
2923+
if (num < 0) {
2924+
// Unpack error happened, we ignore it.
29252925
dht->loaded_num_nodes = 0;
2926+
} else {
2927+
dht->loaded_num_nodes = num;
29262928
}
29272929

2930+
dht->loaded_nodes_list = nodes;
2931+
29282932
break;
29292933
}
29302934

toxcore/LAN_discovery.c

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -62,35 +62,38 @@ static Broadcast_Info *fetch_broadcast_info(const Network *ns)
6262
return nullptr;
6363
}
6464

65-
IP_ADAPTER_INFO *pAdapterInfo = (IP_ADAPTER_INFO *)malloc(sizeof(IP_ADAPTER_INFO));
66-
unsigned long ulOutBufLen = sizeof(IP_ADAPTER_INFO);
65+
IP_ADAPTER_INFO *adapter_info = (IP_ADAPTER_INFO *)malloc(sizeof(IP_ADAPTER_INFO));
6766

68-
if (pAdapterInfo == nullptr) {
67+
if (adapter_info == nullptr) {
6968
free(broadcast);
7069
return nullptr;
7170
}
7271

73-
if (GetAdaptersInfo(pAdapterInfo, &ulOutBufLen) == ERROR_BUFFER_OVERFLOW) {
74-
free(pAdapterInfo);
75-
pAdapterInfo = (IP_ADAPTER_INFO *)malloc(ulOutBufLen);
72+
unsigned long out_buf_len = sizeof(IP_ADAPTER_INFO);
7673

77-
if (pAdapterInfo == nullptr) {
74+
if (GetAdaptersInfo(adapter_info, &out_buf_len) == ERROR_BUFFER_OVERFLOW) {
75+
free(adapter_info);
76+
IP_ADAPTER_INFO *new_adapter_info = (IP_ADAPTER_INFO *)malloc(out_buf_len);
77+
78+
if (new_adapter_info == nullptr) {
7879
free(broadcast);
7980
return nullptr;
8081
}
82+
83+
adapter_info = new_adapter_info;
8184
}
8285

83-
const int ret = GetAdaptersInfo(pAdapterInfo, &ulOutBufLen);
86+
const int ret = GetAdaptersInfo(adapter_info, &out_buf_len);
8487

8588
if (ret == NO_ERROR) {
86-
IP_ADAPTER_INFO *pAdapter = pAdapterInfo;
89+
IP_ADAPTER_INFO *adapter = adapter_info;
8790

88-
while (pAdapter != nullptr) {
91+
while (adapter != nullptr) {
8992
IP gateway = {0};
9093
IP subnet_mask = {0};
9194

92-
if (addr_parse_ip(pAdapter->IpAddressList.IpMask.String, &subnet_mask)
93-
&& addr_parse_ip(pAdapter->GatewayList.IpAddress.String, &gateway)) {
95+
if (addr_parse_ip(adapter->IpAddressList.IpMask.String, &subnet_mask)
96+
&& addr_parse_ip(adapter->GatewayList.IpAddress.String, &gateway)) {
9497
if (net_family_is_ipv4(gateway.family) && net_family_is_ipv4(subnet_mask.family)) {
9598
IP *ip = &broadcast->ips[broadcast->count];
9699
ip->family = net_family_ipv4();
@@ -106,12 +109,12 @@ static Broadcast_Info *fetch_broadcast_info(const Network *ns)
106109
}
107110
}
108111

109-
pAdapter = pAdapter->Next;
112+
adapter = adapter->Next;
110113
}
111114
}
112115

113-
if (pAdapterInfo != nullptr) {
114-
free(pAdapterInfo);
116+
if (adapter_info != nullptr) {
117+
free(adapter_info);
115118
}
116119

117120
return broadcast;

toxcore/TCP_common.c

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -105,17 +105,19 @@ static bool add_priority(TCP_Connection *con, const uint8_t *packet, uint16_t si
105105
return false;
106106
}
107107

108-
new_list->next = nullptr;
109-
new_list->size = size;
110-
new_list->sent = sent;
111-
new_list->data = (uint8_t *)mem_balloc(con->mem, size);
108+
uint8_t *data = (uint8_t *)mem_balloc(con->mem, size);
112109

113-
if (new_list->data == nullptr) {
110+
if (data == nullptr) {
114111
mem_delete(con->mem, new_list);
115112
return false;
116113
}
117114

118-
memcpy(new_list->data, packet, size);
115+
memcpy(data, packet, size);
116+
new_list->data = data;
117+
new_list->size = size;
118+
119+
new_list->next = nullptr;
120+
new_list->sent = sent;
119121

120122
if (p != nullptr) {
121123
p->next = new_list;

toxcore/TCP_server.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -968,20 +968,22 @@ TCP_Server *new_tcp_server(const Logger *logger, const Memory *mem, const Random
968968
temp->ns = ns;
969969
temp->rng = rng;
970970

971-
temp->socks_listening = (Socket *)mem_valloc(mem, num_sockets, sizeof(Socket));
971+
Socket *socks_listening = (Socket *)mem_valloc(mem, num_sockets, sizeof(Socket));
972972

973-
if (temp->socks_listening == nullptr) {
973+
if (socks_listening == nullptr) {
974974
LOGGER_ERROR(logger, "socket allocation failed");
975975
mem_delete(mem, temp);
976976
return nullptr;
977977
}
978978

979+
temp->socks_listening = socks_listening;
980+
979981
#ifdef TCP_SERVER_USE_EPOLL
980982
temp->efd = epoll_create(8);
981983

982984
if (temp->efd == -1) {
983985
LOGGER_ERROR(logger, "epoll initialisation failed");
984-
mem_delete(mem, temp->socks_listening);
986+
mem_delete(mem, socks_listening);
985987
mem_delete(mem, temp);
986988
return nullptr;
987989
}

toxcore/announce.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -243,13 +243,15 @@ bool announce_store_data(Announcements *announce, const uint8_t *data_public_key
243243
free(entry->data);
244244
}
245245

246-
entry->data = (uint8_t *)malloc(length);
246+
uint8_t *entry_data = (uint8_t *)malloc(length);
247247

248-
if (entry->data == nullptr) {
248+
if (entry_data == nullptr) {
249+
entry->data = nullptr; // TODO(iphydf): Is this necessary?
249250
return false;
250251
}
251252

252-
memcpy(entry->data, data, length);
253+
memcpy(entry_data, data, length);
254+
entry->data = entry_data;
253255
}
254256

255257
entry->length = length;

toxcore/events/conference_invite.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,13 +81,14 @@ static bool tox_event_conference_invite_set_cookie(Tox_Event_Conference_Invite *
8181
conference_invite->cookie_length = 0;
8282
}
8383

84-
conference_invite->cookie = (uint8_t *)malloc(cookie_length);
84+
uint8_t *cookie_copy = (uint8_t *)malloc(cookie_length);
8585

86-
if (conference_invite->cookie == nullptr) {
86+
if (cookie_copy == nullptr) {
8787
return false;
8888
}
8989

90-
memcpy(conference_invite->cookie, cookie, cookie_length);
90+
memcpy(cookie_copy, cookie, cookie_length);
91+
conference_invite->cookie = cookie_copy;
9192
conference_invite->cookie_length = cookie_length;
9293
return true;
9394
}

toxcore/events/conference_message.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,13 +95,14 @@ static bool tox_event_conference_message_set_message(Tox_Event_Conference_Messag
9595
conference_message->message_length = 0;
9696
}
9797

98-
conference_message->message = (uint8_t *)malloc(message_length);
98+
uint8_t *message_copy = (uint8_t *)malloc(message_length);
9999

100-
if (conference_message->message == nullptr) {
100+
if (message_copy == nullptr) {
101101
return false;
102102
}
103103

104-
memcpy(conference_message->message, message, message_length);
104+
memcpy(message_copy, message, message_length);
105+
conference_message->message = message_copy;
105106
conference_message->message_length = message_length;
106107
return true;
107108
}

0 commit comments

Comments
 (0)