diff --git a/src/plugins/ruby/weechat-ruby.c b/src/plugins/ruby/weechat-ruby.c index bfcf77b59..1a362e1ad 100644 --- a/src/plugins/ruby/weechat-ruby.c +++ b/src/plugins/ruby/weechat-ruby.c @@ -352,7 +352,6 @@ weechat_ruby_output_flush () { const char *ptr_command; char *temp_buffer, *command; - int length; if (!(*ruby_buffer_output)[0]) return; @@ -381,12 +380,10 @@ weechat_ruby_output_flush () } else { - length = 1 + strlen (temp_buffer) + 1; - command = malloc (length); - if (command) + if (weechat_asprintf (&command, + "%c%s", + temp_buffer[0], temp_buffer) >= 0) { - snprintf (command, length, "%c%s", - temp_buffer[0], temp_buffer); weechat_command (ruby_eval_buffer, (command[0]) ? command : " "); free (command);