mirror of
https://github.com/irssi/irssi.git
synced 2026-08-17 15:42:26 +02:00
Irssi::print() doesn't call printtext() with args (.., "%s", text)
since it broke %_ etc. formats. But instead of crashing every time someone prints %s with Irssi::print(), irssi now checks all those formats and prints them as-is. git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1028 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
parent
e50535a64e
commit
86b714881c
4 changed files with 59 additions and 4 deletions
|
|
@ -30,15 +30,23 @@ void
|
|||
print(str, level=MSGLEVEL_CLIENTNOTICE)
|
||||
char *str
|
||||
int level;
|
||||
PREINIT:
|
||||
char *fixed;
|
||||
CODE:
|
||||
printtext(NULL, NULL, level, "%s", str);
|
||||
fixed = perl_fix_formats(str);
|
||||
printtext(NULL, NULL, level, fixed);
|
||||
g_free(fixed);
|
||||
|
||||
void
|
||||
print_window(str, level=MSGLEVEL_CLIENTNOTICE)
|
||||
char *str
|
||||
int level;
|
||||
PREINIT:
|
||||
char *fixed;
|
||||
CODE:
|
||||
printtext_window(active_win, level, "%s", str);
|
||||
fixed = perl_fix_formats(str);
|
||||
printtext_window(active_win, level, fixed);
|
||||
g_free(fixed);
|
||||
|
||||
void
|
||||
command(cmd, server=active_win->active_server, item=active_win->active)
|
||||
|
|
@ -107,8 +115,12 @@ print(server, channel, str, level)
|
|||
char *channel
|
||||
char *str
|
||||
int level
|
||||
PREINIT:
|
||||
char *fixed;
|
||||
CODE:
|
||||
printtext(server, channel, level, "%s", str);
|
||||
fixed = perl_fix_formats(str);
|
||||
printtext(server, channel, level, fixed);
|
||||
g_free(fixed);
|
||||
|
||||
Irssi::Windowitem
|
||||
window_item_find(server, name)
|
||||
|
|
@ -276,5 +288,9 @@ print(item, str, level=MSGLEVEL_CLIENTNOTICE)
|
|||
Irssi::Windowitem item
|
||||
int level
|
||||
char *str
|
||||
PREINIT:
|
||||
char *fixed;
|
||||
CODE:
|
||||
printtext(item->server, item->name, level, "%s", str);
|
||||
fixed = perl_fix_formats(str);
|
||||
printtext(item->server, item->name, level, fixed);
|
||||
g_free(fixed);
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
#undef _
|
||||
#undef VERSION
|
||||
#define HAVE_CONFIG_H
|
||||
#include "../module.h"
|
||||
|
||||
#include "network.h"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue