Minimize strdup() operations in plugins.

Instead of dup'ing each string before free'ing it, simply re-use the same.

Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
This commit is contained in:
Steffen Jaeckel
2025-03-13 13:01:36 +01:00
parent 5b9516b483
commit 4940218257

View File

@@ -571,8 +571,7 @@ plugins_pre_chat_message_send(const char* const barejid, const char* message)
new_message = plugin->pre_chat_message_send(plugin, barejid, curr_message);
if (new_message) {
free(curr_message);
curr_message = strdup(new_message);
free(new_message);
curr_message = new_message;
} else {
free(curr_message);
g_list_free(values);
@@ -617,8 +616,7 @@ plugins_pre_room_message_display(const char* const barejid, const char* const ni
new_message = plugin->pre_room_message_display(plugin, barejid, nick, curr_message);
if (new_message) {
free(curr_message);
curr_message = strdup(new_message);
free(new_message);
curr_message = new_message;
}
curr = g_list_next(curr);
}
@@ -658,8 +656,7 @@ plugins_pre_room_message_send(const char* const barejid, const char* message)
new_message = plugin->pre_room_message_send(plugin, barejid, curr_message);
if (new_message) {
free(curr_message);
curr_message = strdup(new_message);
free(new_message);
curr_message = new_message;
} else {
free(curr_message);
g_list_free(values);
@@ -728,8 +725,7 @@ plugins_pre_priv_message_display(const char* const fulljid, const char* message)
new_message = plugin->pre_priv_message_display(plugin, jidp->barejid, jidp->resourcepart, curr_message);
if (new_message) {
free(curr_message);
curr_message = strdup(new_message);
free(new_message);
curr_message = new_message;
}
curr = g_list_next(curr);
}
@@ -771,8 +767,7 @@ plugins_pre_priv_message_send(const char* const fulljid, const char* const messa
new_message = plugin->pre_priv_message_send(plugin, jidp->barejid, jidp->resourcepart, curr_message);
if (new_message) {
free(curr_message);
curr_message = strdup(new_message);
free(new_message);
curr_message = new_message;
} else {
free(curr_message);
g_list_free(values);
@@ -820,8 +815,7 @@ plugins_on_message_stanza_send(const char* const text)
new_stanza = plugin->on_message_stanza_send(plugin, curr_stanza);
if (new_stanza) {
free(curr_stanza);
curr_stanza = strdup(new_stanza);
free(new_stanza);
curr_stanza = new_stanza;
}
curr = g_list_next(curr);
}
@@ -867,8 +861,7 @@ plugins_on_presence_stanza_send(const char* const text)
new_stanza = plugin->on_presence_stanza_send(plugin, curr_stanza);
if (new_stanza) {
free(curr_stanza);
curr_stanza = strdup(new_stanza);
free(new_stanza);
curr_stanza = new_stanza;
}
curr = g_list_next(curr);
}
@@ -914,8 +907,7 @@ plugins_on_iq_stanza_send(const char* const text)
new_stanza = plugin->on_iq_stanza_send(plugin, curr_stanza);
if (new_stanza) {
free(curr_stanza);
curr_stanza = strdup(new_stanza);
free(new_stanza);
curr_stanza = new_stanza;
}
curr = g_list_next(curr);
}