--- src/common/command.c.old 2006-09-04 20:14:11.677609580 +0200 +++ src/common/command.c 2006-09-05 10:29:34.790055866 +0200 @@ -1620,23 +1620,24 @@ { t_gui_buffer *buffer; - irc_find_context (server, channel, NULL, &buffer); - if (argc == 1) { if (ascii_strcasecmp (argv[0], "-all") == 0) gui_buffer_clear_all (); else { - irc_display_prefix (NULL, NULL, PREFIX_ERROR); - gui_printf (NULL, - _("%s unknown option for \"%s\" command\n"), - WEECHAT_ERROR, "clear"); - return -1; + char *error; + int number = strtol (argv[0], &error, 10); + if ((error) && (error[0] == '\0')) { + buffer = gui_buffer_search_by_number (number); + gui_buffer_clear (buffer); + } } } - else + else { + irc_find_context (server, channel, NULL, &buffer); gui_buffer_clear (buffer); + } return 0; }