summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSébastien Helleu <flashcode@flashtux.org>2014-11-16 10:53:55 +0100
committerSébastien Helleu <flashcode@flashtux.org>2014-11-16 10:53:55 +0100
commitdebfb57d0ffc6d7c35110a14bc2bda324170ffd5 (patch)
tree3045aca33783f10ba19de238edaad638ccc77ea6 /src
parent9e3fd56fd88d40602e9c6f299702842beef26a71 (diff)
downloadweechat-debfb57d0ffc6d7c35110a14bc2bda324170ffd5.zip
relay: send messages "_buffer_localvar_*" and "_buffer_type_changed" with sync "buffers" (closes #191)
Diffstat (limited to 'src')
-rw-r--r--src/plugins/relay/weechat/relay-weechat-protocol.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/plugins/relay/weechat/relay-weechat-protocol.c b/src/plugins/relay/weechat/relay-weechat-protocol.c
index 3ea85bf03..ab93bc47a 100644
--- a/src/plugins/relay/weechat/relay-weechat-protocol.c
+++ b/src/plugins/relay/weechat/relay-weechat-protocol.c
@@ -502,8 +502,9 @@ relay_weechat_protocol_signal_buffer_cb (void *data, const char *signal,
if (!ptr_buffer)
return WEECHAT_RC_OK;
- /* send signal only if sync with flag "buffer" */
+ /* send signal only if sync with flag "buffers" or "buffer" */
if (relay_weechat_protocol_is_sync (ptr_client, ptr_buffer,
+ RELAY_WEECHAT_PROTOCOL_SYNC_BUFFERS |
RELAY_WEECHAT_PROTOCOL_SYNC_BUFFER))
{
msg = relay_weechat_msg_new (str_signal);
@@ -639,14 +640,15 @@ relay_weechat_protocol_signal_buffer_cb (void *data, const char *signal,
}
}
}
- else if (strcmp (signal, "buffer_cleared") == 0)
+ else if (strncmp (signal, "buffer_localvar_", 16) == 0)
{
ptr_buffer = (struct t_gui_buffer *)signal_data;
- if (!ptr_buffer || relay_weechat_is_relay_buffer (ptr_buffer))
+ if (!ptr_buffer)
return WEECHAT_RC_OK;
- /* send signal only if sync with flag "buffer" */
+ /* send signal only if sync with flag "buffers" or "buffer" */
if (relay_weechat_protocol_is_sync (ptr_client, ptr_buffer,
+ RELAY_WEECHAT_PROTOCOL_SYNC_BUFFERS |
RELAY_WEECHAT_PROTOCOL_SYNC_BUFFER))
{
msg = relay_weechat_msg_new (str_signal);
@@ -655,16 +657,16 @@ relay_weechat_protocol_signal_buffer_cb (void *data, const char *signal,
snprintf (cmd_hdata, sizeof (cmd_hdata),
"buffer:0x%lx", (long unsigned int)ptr_buffer);
relay_weechat_msg_add_hdata (msg, cmd_hdata,
- "number,full_name");
+ "number,full_name,local_variables");
relay_weechat_msg_send (ptr_client, msg);
relay_weechat_msg_free (msg);
}
}
}
- else if (strncmp (signal, "buffer_localvar_", 16) == 0)
+ else if (strcmp (signal, "buffer_cleared") == 0)
{
ptr_buffer = (struct t_gui_buffer *)signal_data;
- if (!ptr_buffer)
+ if (!ptr_buffer || relay_weechat_is_relay_buffer (ptr_buffer))
return WEECHAT_RC_OK;
/* send signal only if sync with flag "buffer" */
@@ -677,7 +679,7 @@ relay_weechat_protocol_signal_buffer_cb (void *data, const char *signal,
snprintf (cmd_hdata, sizeof (cmd_hdata),
"buffer:0x%lx", (long unsigned int)ptr_buffer);
relay_weechat_msg_add_hdata (msg, cmd_hdata,
- "number,full_name,local_variables");
+ "number,full_name");
relay_weechat_msg_send (ptr_client, msg);
relay_weechat_msg_free (msg);
}