comparison libpurple/plugins/log_reader.c @ 19200:d470d42d2cb1

propagate from branch 'im.pidgin.pidgin' (head e687870673f02e5605b0bf9877fd579c78fe8c01) to branch 'im.pidgin.soc.2007.certmgr' (head d1d514d18e94b8444eef617bb29ee248c3a0a572)
author William Ehlhardt <williamehlhardt@gmail.com>
date Sun, 12 Aug 2007 20:48:34 +0000
parents 883c18d31bf4
children 615f6343035f
comparison
equal deleted inserted replaced
19096:81163e153778 19200:d470d42d2cb1
58 char *prpl_name; 58 char *prpl_name;
59 char *temp; 59 char *temp;
60 char *path; 60 char *path;
61 GDir *dir; 61 GDir *dir;
62 62
63 g_return_val_if_fail(sn != NULL, list); 63 g_return_val_if_fail(sn != NULL, NULL);
64 g_return_val_if_fail(account != NULL, list); 64 g_return_val_if_fail(account != NULL, NULL);
65 65
66 logdir = purple_prefs_get_string("/plugins/core/log_reader/adium/log_directory"); 66 logdir = purple_prefs_get_string("/plugins/core/log_reader/adium/log_directory");
67 67
68 /* By clearing the log directory path, this logger can be (effectively) disabled. */ 68 /* By clearing the log directory path, this logger can be (effectively) disabled. */
69 if (!*logdir) 69 if (!logdir || !*logdir)
70 return list; 70 return NULL;
71 71
72 plugin = purple_find_prpl(purple_account_get_protocol_id(account)); 72 plugin = purple_find_prpl(purple_account_get_protocol_id(account));
73 if (!plugin) 73 if (!plugin)
74 return NULL; 74 return NULL;
75 75
234 gchar *read = NULL; 234 gchar *read = NULL;
235 gsize length; 235 gsize length;
236 236
237 /* XXX: TODO: We probably want to set PURPLE_LOG_READ_NO_NEWLINE 237 /* XXX: TODO: We probably want to set PURPLE_LOG_READ_NO_NEWLINE
238 * XXX: TODO: for HTML logs. */ 238 * XXX: TODO: for HTML logs. */
239 *flags = 0; 239 if (flags != NULL)
240 *flags = 0;
240 241
241 g_return_val_if_fail(log != NULL, g_strdup("")); 242 g_return_val_if_fail(log != NULL, g_strdup(""));
242 243
243 data = log->logger_data; 244 data = log->logger_data;
244 245
623 xmlnode *root; 624 xmlnode *root;
624 xmlnode *message; 625 xmlnode *message;
625 const char *old_session_id = ""; 626 const char *old_session_id = "";
626 struct msn_logger_data *data = NULL; 627 struct msn_logger_data *data = NULL;
627 628
628 g_return_val_if_fail(sn != NULL, list); 629 g_return_val_if_fail(sn != NULL, NULL);
629 g_return_val_if_fail(account != NULL, list); 630 g_return_val_if_fail(account != NULL, NULL);
630 631
631 if (strcmp(account->protocol_id, "prpl-msn")) 632 if (strcmp(account->protocol_id, "prpl-msn"))
632 return list; 633 return NULL;
633 634
634 logdir = purple_prefs_get_string("/plugins/core/log_reader/msn/log_directory"); 635 logdir = purple_prefs_get_string("/plugins/core/log_reader/msn/log_directory");
635 636
636 /* By clearing the log directory path, this logger can be (effectively) disabled. */ 637 /* By clearing the log directory path, this logger can be (effectively) disabled. */
637 if (!*logdir) 638 if (!logdir || !*logdir)
638 return list; 639 return NULL;
639 640
640 buddy = purple_find_buddy(account, sn); 641 buddy = purple_find_buddy(account, sn);
641 642
642 if ((username = g_strdup(purple_account_get_string( 643 if ((username = g_strdup(purple_account_get_string(
643 account, "log_reader_msn_log_folder", NULL)))) { 644 account, "log_reader_msn_log_folder", NULL)))) {
872 { 873 {
873 struct msn_logger_data *data; 874 struct msn_logger_data *data;
874 GString *text = NULL; 875 GString *text = NULL;
875 xmlnode *message; 876 xmlnode *message;
876 877
877 *flags = PURPLE_LOG_READ_NO_NEWLINE; 878 if (flags != NULL)
879 *flags = PURPLE_LOG_READ_NO_NEWLINE;
878 g_return_val_if_fail(log != NULL, g_strdup("")); 880 g_return_val_if_fail(log != NULL, g_strdup(""));
879 881
880 data = log->logger_data; 882 data = log->logger_data;
881 883
882 if (data->text) { 884 if (data->text) {
1117 } 1119 }
1118 1120
1119 if (name_guessed != NAME_GUESS_UNKNOWN) 1121 if (name_guessed != NAME_GUESS_UNKNOWN)
1120 text = g_string_append(text, "</span>"); 1122 text = g_string_append(text, "</span>");
1121 1123
1122 style = xmlnode_get_attrib(text_node, "Style"); 1124 style = xmlnode_get_attrib(text_node, "Style");
1123 1125
1124 tmp = xmlnode_get_data(text_node); 1126 tmp = xmlnode_get_data(text_node);
1125 if (style && *style) { 1127 if (style && *style) {
1126 text = g_string_append(text, "<span style=\""); 1128 text = g_string_append(text, "<span style=\"");
1127 text = g_string_append(text, style); 1129 text = g_string_append(text, style);
1207 gchar *contents = NULL; 1209 gchar *contents = NULL;
1208 gsize length; 1210 gsize length;
1209 gchar *line; 1211 gchar *line;
1210 gchar *c; 1212 gchar *c;
1211 1213
1212 g_return_val_if_fail(sn != NULL, list); 1214 g_return_val_if_fail(sn != NULL, NULL);
1213 g_return_val_if_fail(account != NULL, list); 1215 g_return_val_if_fail(account != NULL, NULL);
1214 1216
1215 logdir = purple_prefs_get_string("/plugins/core/log_reader/trillian/log_directory"); 1217 logdir = purple_prefs_get_string("/plugins/core/log_reader/trillian/log_directory");
1216 1218
1217 /* By clearing the log directory path, this logger can be (effectively) disabled. */ 1219 /* By clearing the log directory path, this logger can be (effectively) disabled. */
1218 if (!*logdir) 1220 if (!logdir || !*logdir)
1219 return list; 1221 return NULL;
1220 1222
1221 plugin = purple_find_prpl(purple_account_get_protocol_id(account)); 1223 plugin = purple_find_prpl(purple_account_get_protocol_id(account));
1222 if (!plugin) 1224 if (!plugin)
1223 return NULL; 1225 return NULL;
1224 1226
1425 char *escaped; 1427 char *escaped;
1426 GString *formatted; 1428 GString *formatted;
1427 char *c; 1429 char *c;
1428 const char *line; 1430 const char *line;
1429 1431
1430 *flags = PURPLE_LOG_READ_NO_NEWLINE; 1432 if (flags != NULL)
1433 *flags = PURPLE_LOG_READ_NO_NEWLINE;
1434
1431 g_return_val_if_fail(log != NULL, g_strdup("")); 1435 g_return_val_if_fail(log != NULL, g_strdup(""));
1432 1436
1433 data = log->logger_data; 1437 data = log->logger_data;
1434 1438
1435 g_return_val_if_fail(data->path != NULL, g_strdup("")); 1439 g_return_val_if_fail(data->path != NULL, g_strdup(""));
1770 char *start_log; 1774 char *start_log;
1771 char *new_line; 1775 char *new_line;
1772 int offset = 0; 1776 int offset = 0;
1773 GError *error; 1777 GError *error;
1774 1778
1775 g_return_val_if_fail(sn != NULL, list); 1779 g_return_val_if_fail(sn != NULL, NULL);
1776 g_return_val_if_fail(account != NULL, list); 1780 g_return_val_if_fail(account != NULL, NULL);
1777 1781
1778 /* QIP only supports ICQ. */ 1782 /* QIP only supports ICQ. */
1779 if (strcmp(account->protocol_id, "prpl-icq")) 1783 if (strcmp(account->protocol_id, "prpl-icq"))
1780 return list; 1784 return NULL;
1781 1785
1782 logdir = purple_prefs_get_string("/plugins/core/log_reader/qip/log_directory"); 1786 logdir = purple_prefs_get_string("/plugins/core/log_reader/qip/log_directory");
1783 1787
1784 /* By clearing the log directory path, this logger can be (effectively) disabled. */ 1788 /* By clearing the log directory path, this logger can be (effectively) disabled. */
1785 if (!*logdir) 1789 if (!logdir || !*logdir)
1786 return list; 1790 return NULL;
1787 1791
1788 plugin = purple_find_prpl(purple_account_get_protocol_id(account)); 1792 plugin = purple_find_prpl(purple_account_get_protocol_id(account));
1789 if (!plugin) 1793 if (!plugin)
1790 return NULL; 1794 return NULL;
1791 1795
1921 gchar *contents; 1925 gchar *contents;
1922 GError *error; 1926 GError *error;
1923 char *utf8_string; 1927 char *utf8_string;
1924 FILE *file; 1928 FILE *file;
1925 1929
1926 *flags = PURPLE_LOG_READ_NO_NEWLINE; 1930 if (flags != NULL)
1931 *flags = PURPLE_LOG_READ_NO_NEWLINE;
1932
1927 g_return_val_if_fail(log != NULL, g_strdup("")); 1933 g_return_val_if_fail(log != NULL, g_strdup(""));
1928 1934
1929 data = log->logger_data; 1935 data = log->logger_data;
1930 1936
1931 g_return_val_if_fail(data->path != NULL, g_strdup("")); 1937 g_return_val_if_fail(data->path != NULL, g_strdup(""));