Mercurial > pidgin
changeset 9428:796f510a6e19
[gaim-migrate @ 10247]
Arun A Tharuvai writes:
Slash commands with "w" (and "W") ignore space
between it and the next command. This causes the
trailing space to either: get treated as the first
character of of an immediately following "s" (or "S")
argument, or get treated as the entire contents of any
following "w" (or "W") arguments.
This patch of his, #982083, fixes those issues.
committer: Tailor Script <tailor@pidgin.im>
author | Tim Ringenbach <marv@pidgin.im> |
---|---|
date | Tue, 29 Jun 2004 21:34:07 +0000 |
parents | 66b3f54527e6 |
children | a3e3c71d995a |
files | src/cmds.c |
diffstat | 1 files changed, 17 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/src/cmds.c Tue Jun 29 20:35:30 2004 +0000 +++ b/src/cmds.c Tue Jun 29 21:34:07 2004 +0000 @@ -120,15 +120,25 @@ switch (cmd->args[i]) { case 'w': - if (!(end = strchr(cur, ' '))) end = cur + strlen(cur); - (*args)[i] = g_strndup(cur, end - cur); - cur += end - cur; + if (!(end = strchr(cur, ' '))) { + end = cur + strlen(cur); + (*args)[i] = g_strndup(cur, end - cur); + cur = end; + } else { + (*args)[i] = g_strndup(cur, end - cur); + cur = end + 1; + } break; case 'W': - if (!(end = strchr(cur, ' '))) end = cur + strlen(cur); - (*args)[i] = gaim_markup_slice(m, g_utf8_pointer_to_offset(s, cur), g_utf8_pointer_to_offset(s, end)); - cur += end - cur; - break; + if (!(end = strchr(cur, ' '))) { + end = cur + strlen(cur); + (*args)[i] = gaim_markup_slice(m, g_utf8_pointer_to_offset(s, cur), g_utf8_pointer_to_offset(s, end)); + cur = end; + } else { + (*args)[i] = gaim_markup_slice(m, g_utf8_pointer_to_offset(s, cur), g_utf8_pointer_to_offset(s, end)); + cur = end +1; + } + break; case 's': (*args)[i] = g_strdup(cur); cur = cur + strlen(cur);