1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-22 04:17:44 +00:00

- Update to 20121110

- Remove extraneous patch

Feature safe:	yes
This commit is contained in:
Jase Thew 2012-11-10 14:07:11 +00:00
parent c7865dae40
commit 6717f8f0aa
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=307279
3 changed files with 4 additions and 138 deletions

View File

@ -1,8 +1,7 @@
# $FreeBSD$
PORTNAME= weechat
PORTVERSION= 20121103
PORTREVISION= 1
PORTVERSION= 20121110
CATEGORIES= irc
MASTER_SITES= http://perturb.me.uk/distfiles/ \
${MASTER_SITE_LOCAL}
@ -27,7 +26,7 @@ WANT_PERL= yes
LIB_DEPENDS+= curl:${PORTSDIR}/ftp/curl \
gcrypt:${PORTSDIR}/security/libgcrypt
GITREV= c848cb4
GITREV= 7cd376b
WRKSRC= ${WRKDIR}/${PORTNAME}-${GITREV}
# Please note: the DEBUG option is *NOT* empty, it is utilised by

View File

@ -1,2 +1,2 @@
SHA256 (weechat-devel-c848cb4.tar.gz) = 0addead395d9eaeafa782996ccc447dafa3b5138d3e21285b602abf37c614655
SIZE (weechat-devel-c848cb4.tar.gz) = 2511229
SHA256 (weechat-devel-7cd376b.tar.gz) = dd10c1ab81051ec3476ad95a12c4c70cd8161a5f0dbcc7f0659e3d2602a79ef2
SIZE (weechat-devel-7cd376b.tar.gz) = 2517031

View File

@ -1,133 +0,0 @@
From 9453e81baa7935db82a0b765a47cba772aba730d Mon Sep 17 00:00:00 2001
--- src/plugins/irc/irc-color.c
+++ src/plugins/irc/irc-color.c
@@ -62,13 +62,15 @@ char *irc_color_to_weechat[IRC_NUM_COLORS] =
char *
irc_color_decode (const char *string, int keep_colors)
{
- unsigned char *out, *ptr_string;
- int out_length, length, out_pos;
- char str_fg[3], str_bg[3], str_color[128], str_key[128];
+ unsigned char *out, *out2, *ptr_string;
+ int out_length, length, out_pos, length_to_add;
+ char str_fg[3], str_bg[3], str_color[128], str_key[128], str_to_add[128];
const char *remapped_color;
int fg, bg, bold, reverse, italic, underline, rc;
out_length = (strlen (string) * 2) + 1;
+ if (out_length < 128)
+ out_length = 128;
out = malloc (out_length);
if (!out)
return NULL;
@@ -80,20 +82,27 @@ irc_color_decode (const char *string, int keep_colors)
ptr_string = (unsigned char *)string;
out[0] = '\0';
+ out_pos = 0;
while (ptr_string && ptr_string[0])
{
+ str_to_add[0] = '\0';
switch (ptr_string[0])
{
case IRC_COLOR_BOLD_CHAR:
if (keep_colors)
- strcat ((char *)out,
- weechat_color((bold) ? "-bold" : "bold"));
+ {
+ snprintf (str_to_add, sizeof (str_to_add), "%s",
+ weechat_color ((bold) ? "-bold" : "bold"));
+ }
bold ^= 1;
ptr_string++;
break;
case IRC_COLOR_RESET_CHAR:
if (keep_colors)
- strcat ((char *)out, weechat_color("reset"));
+ {
+ snprintf (str_to_add, sizeof (str_to_add), "%s",
+ weechat_color ("reset"));
+ }
bold = 0;
reverse = 0;
italic = 0;
@@ -106,22 +115,28 @@ irc_color_decode (const char *string, int keep_colors)
case IRC_COLOR_REVERSE_CHAR:
case IRC_COLOR_REVERSE2_CHAR:
if (keep_colors)
- strcat ((char *)out,
- weechat_color((reverse) ? "-reverse" : "reverse"));
+ {
+ snprintf (str_to_add, sizeof (str_to_add), "%s",
+ weechat_color ((reverse) ? "-reverse" : "reverse"));
+ }
reverse ^= 1;
ptr_string++;
break;
case IRC_COLOR_ITALIC_CHAR:
if (keep_colors)
- strcat ((char *)out,
- weechat_color((italic) ? "-italic" : "italic"));
+ {
+ snprintf (str_to_add, sizeof (str_to_add), "%s",
+ weechat_color ((italic) ? "-italic" : "italic"));
+ }
italic ^= 1;
ptr_string++;
break;
case IRC_COLOR_UNDERLINE_CHAR:
if (keep_colors)
- strcat ((char *)out,
- weechat_color((underline) ? "-underline" : "underline"));
+ {
+ snprintf (str_to_add, sizeof (str_to_add), "%s",
+ weechat_color ((underline) ? "-underline" : "underline"));
+ }
underline ^= 1;
ptr_string++;
break;
@@ -194,22 +209,39 @@ irc_color_decode (const char *string, int keep_colors)
(bg >= 0) ? "," : "",
(bg >= 0) ? irc_color_to_weechat[bg] : "");
}
- strcat ((char *)out, weechat_color(str_color));
+ snprintf (str_to_add, sizeof (str_to_add), "%s",
+ weechat_color (str_color));
}
else
- strcat ((char *)out, weechat_color("resetcolor"));
+ {
+ snprintf (str_to_add, sizeof (str_to_add), "%s",
+ weechat_color ("resetcolor"));
+ }
}
break;
default:
length = weechat_utf8_char_size ((char *)ptr_string);
if (length == 0)
length = 1;
- out_pos = strlen ((char *)out);
- memcpy (out + out_pos, ptr_string, length);
- out[out_pos + length] = '\0';
+ memcpy (str_to_add, ptr_string, length);
+ str_to_add[length] = '\0';
ptr_string += length;
break;
}
+ if (str_to_add[0])
+ {
+ length_to_add = strlen (str_to_add);
+ if (out_pos + length_to_add >= out_length)
+ {
+ out_length *= 2;
+ out2 = realloc (out, out_length);
+ if (!out2)
+ return (char *)out;
+ out = out2;
+ }
+ memcpy (out + out_pos, str_to_add, length_to_add + 1);
+ out_pos += length_to_add;
+ }
}
return (char *)out;