| 755 g_free(hay); |
755 g_free(hay); |
| 756 |
756 |
| 757 return ret; |
757 return ret; |
| 758 } |
758 } |
| 759 |
759 |
| 760 gboolean purple_message_meify(char *message, gssize len) |
|
| 761 { |
|
| 762 char *c; |
|
| 763 gboolean inside_html = FALSE; |
|
| 764 |
|
| 765 g_return_val_if_fail(message != NULL, FALSE); |
|
| 766 |
|
| 767 if(len == -1) |
|
| 768 len = strlen(message); |
|
| 769 |
|
| 770 for (c = message; *c; c++, len--) { |
|
| 771 if(inside_html) { |
|
| 772 if(*c == '>') |
|
| 773 inside_html = FALSE; |
|
| 774 } else { |
|
| 775 if(*c == '<') |
|
| 776 inside_html = TRUE; |
|
| 777 else |
|
| 778 break; |
|
| 779 } |
|
| 780 } |
|
| 781 |
|
| 782 if(*c && !g_ascii_strncasecmp(c, "/me ", 4)) { |
|
| 783 memmove(c, c+4, len-3); |
|
| 784 return TRUE; |
|
| 785 } |
|
| 786 |
|
| 787 return FALSE; |
|
| 788 } |
|
| 789 |
760 |
| 790 char *purple_text_strip_mnemonic(const char *in) |
761 char *purple_text_strip_mnemonic(const char *in) |
| 791 { |
762 { |
| 792 char *out; |
763 char *out; |
| 793 char *a; |
764 char *a; |