diff options
author | dx <dx@dxzone.com.ar> | 2017-05-27 20:04:10 -0300 |
---|---|---|
committer | dx <dx@dxzone.com.ar> | 2017-05-27 20:04:10 -0300 |
commit | 86d30dad52ce5e0a57bee36e28e31b7af71cfc01 (patch) | |
tree | 3be2f68ba23f8db1fbd1508352d0f126e221f267 | |
parent | 857c1549611bebed988fa6e8e8294335aaa562bf (diff) | |
parent | 64f413d0e3c8e0ddef868b5ca99dd5eecacdf781 (diff) | |
download | pidgin-86d30dad52ce5e0a57bee36e28e31b7af71cfc01.tar.gz |
Merge release-2.x.y changes, fix changelog conflicts
159 files changed, 1088 insertions, 1086 deletions
@@ -1,6 +1,9 @@ Pidgin and Finch: The Pimpin' Penguin IM Clients That're Good for the Soul version 2.12.1 (??/??/????): + libpurple: + * Unified string comparison. (PR #186) (Arkadiy Illarionov) + XMPP: * Show XEP-0066 OOB URLs in any message, not just headlines diff --git a/finch/gntaccount.c b/finch/gntaccount.c index 4464b548c6..fac1ea70ee 100644 --- a/finch/gntaccount.c +++ b/finch/gntaccount.c @@ -167,7 +167,7 @@ save_account_cb(AccountEditDialog *dialog) } else { const char *old = purple_account_get_protocol_id(account); char *oldprpl; - if (strcmp(old, purple_plugin_get_id(plugin))) { + if (!purple_strequal(old, purple_plugin_get_id(plugin))) { purple_notify_error(NULL, _("Error"), _("Account was not modified"), _("The account's protocol cannot be changed while it is connected to the server.")); return; @@ -448,7 +448,7 @@ add_protocol_options(AccountEditDialog *dialog) PurpleKeyValuePair *kvp = opt_iter->data; gnt_combo_box_add_data(GNT_COMBO_BOX(combo), kvp->value, kvp->key); - if (g_str_equal(kvp->value, active)) + if (purple_strequal(kvp->value, active)) gnt_combo_box_set_selected(GNT_COMBO_BOX(combo), kvp->value); } } diff --git a/finch/gntblist.c b/finch/gntblist.c index b2c62c55d8..323e9e76d0 100644 --- a/finch/gntblist.c +++ b/finch/gntblist.c @@ -1942,16 +1942,16 @@ key_pressed(GntWidget *widget, const char *text, FinchBlist *ggblist) if (gnt_tree_is_searching(GNT_TREE(ggblist->tree))) gnt_bindable_perform_action_named(GNT_BINDABLE(ggblist->tree), "end-search", NULL); remove_peripherals(ggblist); - } else if (strcmp(text, GNT_KEY_INS) == 0) { + } else if (purple_strequal(text, GNT_KEY_INS)) { PurpleBlistNode *node = gnt_tree_get_selection_data(GNT_TREE(ggblist->tree)); purple_blist_request_add_buddy(NULL, NULL, node && PURPLE_BLIST_NODE_IS_GROUP(node) ? purple_group_get_name(PURPLE_GROUP(node)) : NULL, NULL); } else if (!gnt_tree_is_searching(GNT_TREE(ggblist->tree))) { - if (strcmp(text, "t") == 0) { + if (purple_strequal(text, "t")) { finch_blist_toggle_tag_buddy(gnt_tree_get_selection_data(GNT_TREE(ggblist->tree))); gnt_bindable_perform_action_named(GNT_BINDABLE(ggblist->tree), "move-down", NULL); - } else if (strcmp(text, "a") == 0) { + } else if (purple_strequal(text, "a")) { finch_blist_place_tagged(gnt_tree_get_selection_data(GNT_TREE(ggblist->tree))); } else return FALSE; @@ -2060,13 +2060,13 @@ populate_buddylist(void) if (ggblist->manager->init) ggblist->manager->init(); - if (strcmp(purple_prefs_get_string(PREF_ROOT "/sort_type"), "text") == 0) { + if (purple_strequal(purple_prefs_get_string(PREF_ROOT "/sort_type"), "text")) { gnt_tree_set_compare_func(GNT_TREE(ggblist->tree), (GCompareFunc)blist_node_compare_text); - } else if (strcmp(purple_prefs_get_string(PREF_ROOT "/sort_type"), "status") == 0) { + } else if (purple_strequal(purple_prefs_get_string(PREF_ROOT "/sort_type"), "status")) { gnt_tree_set_compare_func(GNT_TREE(ggblist->tree), (GCompareFunc)blist_node_compare_status); - } else if (strcmp(purple_prefs_get_string(PREF_ROOT "/sort_type"), "log") == 0) { + } else if (purple_strequal(purple_prefs_get_string(PREF_ROOT "/sort_type"), "log")) { gnt_tree_set_compare_func(GNT_TREE(ggblist->tree), (GCompareFunc)blist_node_compare_log); } @@ -3240,7 +3240,7 @@ void finch_blist_install_manager(const FinchBlistManager *manager) if (!g_list_find(managers, manager)) { managers = g_list_append(managers, (gpointer)manager); reconstruct_grouping_menu(); - if (strcmp(manager->id, purple_prefs_get_string(PREF_ROOT "/grouping")) == 0) + if (purple_strequal(manager->id, purple_prefs_get_string(PREF_ROOT "/grouping"))) purple_prefs_trigger_callback(PREF_ROOT "/grouping"); } } @@ -3250,7 +3250,7 @@ void finch_blist_uninstall_manager(const FinchBlistManager *manager) if (g_list_find(managers, manager)) { managers = g_list_remove(managers, manager); reconstruct_grouping_menu(); - if (strcmp(manager->id, purple_prefs_get_string(PREF_ROOT "/grouping")) == 0) + if (purple_strequal(manager->id, purple_prefs_get_string(PREF_ROOT "/grouping"))) purple_prefs_trigger_callback(PREF_ROOT "/grouping"); } } @@ -3263,7 +3263,7 @@ FinchBlistManager * finch_blist_manager_find(const char *id) for (; iter; iter = iter->next) { FinchBlistManager *m = iter->data; - if (strcmp(id, m->id) == 0) + if (purple_strequal(id, m->id)) return m; } return NULL; diff --git a/finch/gntconv.c b/finch/gntconv.c index 04c882857a..30695fb1bc 100644 --- a/finch/gntconv.c +++ b/finch/gntconv.c @@ -1330,15 +1330,15 @@ cmd_message_color(PurpleConversation *conv, const char *cmd, char **args, char * int *msgclass = NULL; int fg, bg; - if (strcmp(args[0], "receive") == 0) + if (purple_strequal(args[0], "receive")) msgclass = &color_message_receive; - else if (strcmp(args[0], "send") == 0) + else if (purple_strequal(args[0], "send")) msgclass = &color_message_send; - else if (strcmp(args[0], "highlight") == 0) + else if (purple_strequal(args[0], "highlight")) msgclass = &color_message_highlight; - else if (strcmp(args[0], "action") == 0) + else if (purple_strequal(args[0], "action")) msgclass = &color_message_action; - else if (strcmp(args[0], "timestamp") == 0) + else if (purple_strequal(args[0], "timestamp")) msgclass = &color_timestamp; else { if (error) diff --git a/finch/gntlog.c b/finch/gntlog.c index c946c285c6..92a6f521b4 100644 --- a/finch/gntlog.c +++ b/finch/gntlog.c @@ -92,7 +92,7 @@ static gboolean log_viewer_equal(gconstpointer y, gconstpointer z) if (a->username && b->username) { normal = g_strdup(purple_normalize(a->account, a->username)); ret = (a->account == b->account) && - !strcmp(normal, purple_normalize(b->account, b->username)); + purple_strequal(normal, purple_normalize(b->account, b->username)); g_free(normal); } else { ret = (a == b); @@ -123,7 +123,7 @@ static void search_cb(GntWidget *button, FinchLogViewer *lv) return; } - if (lv->search != NULL && !strcmp(lv->search, search_term)) { + if (lv->search != NULL && purple_strequal(lv->search, search_term)) { return; } @@ -239,7 +239,7 @@ static void populate_log_tree(FinchLogViewer *lv) pmonth = purple_utf8_strftime(_("%B %Y"), log->tm ? log->tm : localtime(&log->time)); - if (strcmp(pmonth, prev_top_month) != 0) { + if (!purple_strequal(pmonth, prev_top_month)) { month = g_strdup(pmonth); /* top level */ gnt_tree_add_row_last(GNT_TREE(lv->tree), diff --git a/finch/gntplugin.c b/finch/gntplugin.c index cf863507a5..fb77f2492a 100644 --- a/finch/gntplugin.c +++ b/finch/gntplugin.c @@ -499,7 +499,7 @@ process_pref_frame(PurplePluginPrefFrame *frame) } stringlist = g_list_prepend(stringlist, value); purple_request_field_list_add_icon(field, label, NULL, value); - if (strcmp(value, current_value) == 0) + if (purple_strequal(value, current_value)) purple_request_field_list_add_selected(field, label); list = list->next->next; } diff --git a/finch/gntplugin.h b/finch/gntplugin.h index b97b54d74c..eafd6f13e4 100644 --- a/finch/gntplugin.h +++ b/finch/gntplugin.h @@ -50,7 +50,7 @@ typedef GntWidget* (*FinchPluginFrame) (void); */ #define PURPLE_IS_GNT_PLUGIN(plugin) \ ((plugin)->info != NULL && (plugin)->info->ui_info != NULL && \ - !strcmp((plugin)->info->ui_requirement, FINCH_PLUGIN_TYPE)) + purple_strequal((plugin)->info->ui_requirement, FINCH_PLUGIN_TYPE)) /** * Get the ui-info from GNT-plugins. diff --git a/finch/gntprefs.c b/finch/gntprefs.c index 308962d895..82ff9d58a6 100644 --- a/finch/gntprefs.c +++ b/finch/gntprefs.c @@ -68,7 +68,7 @@ void finch_prefs_update_old() purple_prefs_rename("/purple/gnt", "/finch"); if ((str = purple_prefs_get_string("/purple/away/idle_reporting")) && - strcmp(str, "gaim") == 0) + purple_strequal(str, "gaim")) purple_prefs_set_string("/purple/away/idle_reporting", "purple"); } @@ -167,7 +167,7 @@ get_pref_field(Prefs *prefs) select = TRUE; break; case PURPLE_PREF_STRING: - if (strcmp(purple_prefs_get_string(prefs->pref), iter->data) == 0) + if (purple_strequal(purple_prefs_get_string(prefs->pref), iter->data)) select = TRUE; break; default: diff --git a/finch/gntrequest.c b/finch/gntrequest.c index 23c6014a08..37521fc0c9 100644 --- a/finch/gntrequest.c +++ b/finch/gntrequest.c @@ -455,7 +455,7 @@ create_string_field(PurpleRequestField *field, GntWidget **username) gnt_entry_set_always_suggest(GNT_ENTRY(entry), TRUE); if (username) *username = entry; - } else if (hint && !strcmp(hint, "group")) { + } else if (purple_strequal(hint, "group")) { PurpleBlistNode *node; for (node = purple_blist_get_root(); node; node = purple_blist_node_get_sibling_next(node)) { diff --git a/finch/gntsound.c b/finch/gntsound.c index 718b240c00..047e59809b 100644 --- a/finch/gntsound.c +++ b/finch/gntsound.c @@ -479,9 +479,9 @@ finch_sound_play_file(const char *filename) method = purple_prefs_get_string(make_pref("/method")); - if (!strcmp(method, "nosound")) { + if (purple_strequal(method, "nosound")) { return; - } else if (!strcmp(method, "beep")) { + } else if (purple_strequal(method, "beep")) { beep(); return; } @@ -492,7 +492,7 @@ finch_sound_play_file(const char *filename) } #ifndef _WIN32 - if (!strcmp(method, "custom")) { + if (purple_strequal(method, "custom")) { const char *sound_cmd; char *command; char *esc_filename; @@ -527,7 +527,7 @@ finch_sound_play_file(const char *filename) if (gst_init_failed) /* Perhaps do beep instead? */ return; volume = (float)(CLAMP(purple_prefs_get_int(make_pref("/volume")), 0, 100)) / 50; - if (!strcmp(method, "automatic")) { + if (purple_strequal(method, "automatic")) { if (purple_running_gnome()) { sink = gst_element_factory_make("gconfaudiosink", "sink"); } @@ -537,13 +537,13 @@ finch_sound_play_file(const char *filename) purple_debug_error("sound", "Unable to create GStreamer audiosink.\n"); return; } - } else if (!strcmp(method, "esd")) { + } else if (purple_strequal(method, "esd")) { sink = gst_element_factory_make("esdsink", "sink"); if (!sink) { purple_debug_error("sound", "Unable to create GStreamer audiosink.\n"); return; } - } else if (!strcmp(method, "alsa")) { + } else if (purple_strequal(method, "alsa")) { sink = gst_element_factory_make("alsasink", "sink"); if (!sink) { purple_debug_error("sound", "Unable to create GStreamer audiosink.\n"); @@ -839,7 +839,7 @@ load_pref_window(const char * profile) static void reload_pref_window(const char *profile) { - if (!strcmp(profile, finch_sound_get_active_profile())) + if (purple_strequal(profile, finch_sound_get_active_profile())) return; load_pref_window(profile); } @@ -850,19 +850,19 @@ prof_del_cb(GntWidget *button, gpointer null) const char * profile = gnt_entry_get_text(GNT_ENTRY(pref_dialog->new_profile)); gchar * pref; - if (!strcmp(profile, DEFAULT_PROFILE)) + if (purple_strequal(profile, DEFAULT_PROFILE)) return; pref = g_strdup_printf(FINCH_PREFS_ROOT "/sound/profiles/%s", profile); purple_prefs_remove(pref); g_free(pref); - if (!strcmp(pref_dialog->original_profile, profile)) { + if (purple_strequal(pref_dialog->original_profile, profile)) { g_free(pref_dialog->original_profile); pref_dialog->original_profile = g_strdup(DEFAULT_PROFILE); } - if(!strcmp(profile, finch_sound_get_active_profile())) + if(purple_strequal(profile, finch_sound_get_active_profile())) reload_pref_window(DEFAULT_PROFILE); gnt_tree_remove(GNT_TREE(pref_dialog->profiles), (gchar *) profile); @@ -1098,7 +1098,7 @@ gboolean finch_sound_is_enabled(void) if (!method) return FALSE; - if (strcmp(method, "nosound") == 0) + if (purple_strequal(method, "nosound")) return FALSE; if (purple_prefs_get_int(make_pref("/volume")) <= 0) return FALSE; diff --git a/finch/plugins/gnthistory.c b/finch/plugins/gnthistory.c index b5514f0b26..5e0ecb083d 100644 --- a/finch/plugins/gnthistory.c +++ b/finch/plugins/gnthistory.c @@ -159,7 +159,7 @@ history_prefs_check(PurplePlugin *plugin) const char *label = _(list->data); list = g_list_delete_link(list, list); purple_request_field_list_add_icon(field, label, NULL, list->data); - if (system && strcmp(system, list->data) == 0) + if (purple_strequal(system, list->data)) purple_request_field_list_add_selected(field, label); list = g_list_delete_link(list, list); } diff --git a/finch/plugins/lastlog.c b/finch/plugins/lastlog.c index 7e7ef0e0c8..ebcb57d7a5 100644 --- a/finch/plugins/lastlog.c +++ b/finch/plugins/lastlog.c @@ -42,13 +42,13 @@ window_kpress_cb(GntWidget *wid, const char *key, GntTextView *view) { if (key[0] == 27) { - if (strcmp(key, GNT_KEY_DOWN) == 0) + if (purple_strequal(key, GNT_KEY_DOWN)) gnt_text_view_scroll(view, 1); - else if (strcmp(key, GNT_KEY_UP) == 0) + else if (purple_strequal(key, GNT_KEY_UP)) gnt_text_view_scroll(view, -1); - else if (strcmp(key, GNT_KEY_PGDOWN) == 0) + else if (purple_strequal(key, GNT_KEY_PGDOWN)) gnt_text_view_scroll(view, wid->priv.height - 2); - else if (strcmp(key, GNT_KEY_PGUP) == 0) + else if (purple_strequal(key, GNT_KEY_PGUP)) gnt_text_view_scroll(view, -(wid->priv.height - 2)); else return FALSE; diff --git a/libpurple/account.c b/libpurple/account.c index 75f3bacb9f..55962cb7f4 100644 --- a/libpurple/account.c +++ b/libpurple/account.c @@ -559,10 +559,10 @@ static void migrate_xmpp_encryption(PurpleAccount *account) { /* When this is removed, nuke the "old_ssl" and "require_tls" settings */ - if (g_str_equal(purple_account_get_protocol_id(account), "prpl-jabber")) { + if (purple_strequal(purple_account_get_protocol_id(account), "prpl-jabber")) { const char *sec = purple_account_get_string(account, "connection_security", ""); - if (g_str_equal("", sec)) { + if (purple_strequal("", sec)) { const char *val = "require_tls"; if (purple_account_get_bool(account, "old_ssl", FALSE)) val = "old_ssl"; @@ -909,9 +909,9 @@ parse_account(xmlnode *node) if (keyring_id == NULL || keyring_id[0] == '\0') is_plaintext = TRUE; - else if (g_strcmp0(keyring_id, "keyring-internal") != 0) + else if (!purple_strequal(keyring_id, "keyring-internal")) is_plaintext = FALSE; - else if (mode == NULL || mode[0] == '\0' || g_strcmp0(mode, "cleartext") == 0) + else if (mode == NULL || mode[0] == '\0' || purple_strequal(mode, "cleartext")) is_plaintext = TRUE; else is_plaintext = FALSE; diff --git a/libpurple/blist.c b/libpurple/blist.c index fcdc8a97bc..2233835df6 100644 --- a/libpurple/blist.c +++ b/libpurple/blist.c @@ -101,7 +101,7 @@ static guint _purple_blist_hbuddy_equal(struct _purple_hbuddy *hb1, struct _purp { return (hb1->group == hb2->group && hb1->account == hb2->account && - g_str_equal(hb1->name, hb2->name)); + purple_strequal(hb1->name, hb2->name)); } static void _purple_blist_hbuddy_free_key(struct _purple_hbuddy *hb) @@ -279,7 +279,7 @@ group_to_xmlnode(PurpleBlistNode *gnode) group = (PurpleGroup *)gnode; node = xmlnode_new("group"); - if (g_strcmp0(group->name, _("Buddies")) != 0) + if (!purple_strequal(group->name, _("Buddies"))) xmlnode_set_attrib(node, "name", group->name); /* Write settings */ @@ -2571,7 +2571,7 @@ purple_blist_find_chat(PurpleAccount *account, const char *name) g_list_free(parts); if (chat->account == account && chat_name != NULL && - normname != NULL && !strcmp(purple_normalize(account, chat_name), normname)) { + purple_strequal(purple_normalize(account, chat_name), normname)) { g_free(normname); return chat; } diff --git a/libpurple/ciphers/sha256.c b/libpurple/ciphers/sha256.c index 213a9cd3cf..dbf7b735cf 100644 --- a/libpurple/ciphers/sha256.c +++ b/libpurple/ciphers/sha256.c @@ -110,11 +110,11 @@ sha256_set_opt(PurpleCipherContext *context, const gchar *name, void *value) { ctx = purple_cipher_context_get_data(context); - if(!strcmp(name, "sizeHi")) { + if(purple_strequal(name, "sizeHi")) { ctx->sizeHi = GPOINTER_TO_INT(value); - } else if(!strcmp(name, "sizeLo")) { + } else if(purple_strequal(name, "sizeLo")) { ctx->sizeLo = GPOINTER_TO_INT(value); - } else if(!strcmp(name, "lenW")) { + } else if(purple_strequal(name, "lenW")) { ctx->lenW = GPOINTER_TO_INT(value); } } @@ -125,11 +125,11 @@ sha256_get_opt(PurpleCipherContext *context, const gchar *name) { ctx = purple_cipher_context_get_data(context); - if(!strcmp(name, "sizeHi")) { + if(purple_strequal(name, "sizeHi")) { return GINT_TO_POINTER(ctx->sizeHi); - } else if(!strcmp(name, "sizeLo")) { + } else if(purple_strequal(name, "sizeLo")) { return GINT_TO_POINTER(ctx->sizeLo); - } else if(!strcmp(name, "lenW")) { + } else if(purple_strequal(name, "lenW")) { return GINT_TO_POINTER(ctx->lenW); } diff --git a/libpurple/conversation.c b/libpurple/conversation.c index 8a39b600d4..9c7705c446 100644 --- a/libpurple/conversation.c +++ b/libpurple/conversation.c @@ -61,7 +61,7 @@ static guint _purple_conversations_hconv_equal(struct _purple_hconv *hc1, struct { return (hc1->type == hc2->type && hc1->account == hc2->account && - g_str_equal(hc1->name, hc2->name)); + purple_strequal(hc1->name, hc2->name)); } static void _purple_conversations_hconv_free_key(struct _purple_hconv *hc) diff --git a/libpurple/dbus-server.c b/libpurple/dbus-server.c index 86b8f5e122..530be7a9d5 100644 --- a/libpurple/dbus-server.c +++ b/libpurple/dbus-server.c @@ -448,7 +448,7 @@ purple_dbus_dispatch_cb(DBusConnection *connection, return FALSE; for (i = 0; bindings[i].name; i++) - if (!strcmp(name, bindings[i].name)) + if (purple_strequal(name, bindings[i].name)) { DBusMessage *reply; DBusError error; @@ -788,7 +788,7 @@ purple_dbus_signal_emit_purple(const char *name, int num_values, * flag for each signal that states whether this signal is to be * dbus-propagated or not. */ - if (!strcmp(name, "dbus-method-called")) + if (purple_strequal(name, "dbus-method-called")) return; newname = purple_dbus_convert_signal_name(name); diff --git a/libpurple/dbus-useful.c b/libpurple/dbus-useful.c index b288887b1f..4b200ef153 100644 --- a/libpurple/dbus-useful.c +++ b/libpurple/dbus-useful.c @@ -22,10 +22,10 @@ purple_accounts_find_ext(const char *name, const char *protocol_id, for (l = purple_accounts_get_all(); l != NULL; l = l->next) { PurpleAccount *account = (PurpleAccount *)l->data; - if (who && strcmp(purple_normalize(NULL, purple_account_get_username(account)), who)) + if (who && !purple_strequal(purple_normalize(NULL, purple_account_get_username(account)), who)) continue; - if (protocol_id && strcmp(account->protocol_id, protocol_id)) + if (protocol_id && !purple_strequal(account->protocol_id, protocol_id)) continue; if (account_test && !account_test(account)) diff --git a/libpurple/dnssrv.c b/libpurple/dnssrv.c index 3a6ad89ad5..ae36e9efe8 100644 --- a/libpurple/dnssrv.c +++ b/libpurple/dnssrv.c @@ -671,7 +671,7 @@ res_thread(gpointer data) for (dr_tmp = dr; dr_tmp != NULL; dr_tmp = dr_tmp->pNext) { /* Discard any incorrect entries. I'm not sure if this is necessary */ - if (dr_tmp->wType != type || strcmp(dr_tmp->pName, query_data->query) != 0) { + if (dr_tmp->wType != type || !purple_strequal(dr_tmp->pName, query_data->query)) { continue; } @@ -699,7 +699,7 @@ res_thread(gpointer data) int i; /* Discard any incorrect entries. I'm not sure if this is necessary */ - if (dr_tmp->wType != type || strcmp(dr_tmp->pName, query_data->query) != 0) { + if (dr_tmp->wType != type || !purple_strequal(dr_tmp->pName, query_data->query)) { continue; } diff --git a/libpurple/ft.c b/libpurple/ft.c index fb83ef09a2..c15efcfa70 100644 --- a/libpurple/ft.c +++ b/libpurple/ft.c @@ -916,9 +916,10 @@ void purple_xfer_set_message(PurpleXfer *xfer, const char *message) { g_return_if_fail(xfer != NULL); - - g_free(xfer->message); - xfer->message = g_strdup(message); + if (message != xfer->message) { + g_free(xfer->message); + xfer->message = g_strdup(message); + } } void @@ -926,8 +927,10 @@ purple_xfer_set_filename(PurpleXfer *xfer, const char *filename) { g_return_if_fail(xfer != NULL); - g_free(xfer->filename); - xfer->filename = g_strdup(filename); + if (filename != xfer->filename) { + g_free(xfer->filename); + xfer->filename = g_strdup(filename); + } } void @@ -935,8 +938,10 @@ purple_xfer_set_local_filename(PurpleXfer *xfer, const char *filename) { g_return_if_fail(xfer != NULL); - g_free(xfer->local_filename); - xfer->local_filename = g_strdup(filename); + if (filename != xfer->local_filename) { + g_free(xfer->local_filename); + xfer->local_filename = g_strdup(filename); + } } void @@ -1781,8 +1786,9 @@ purple_xfer_set_thumbnail(PurpleXfer *xfer, gconstpointer thumbnail, { PurpleXferPrivData *priv = g_hash_table_lookup(xfers_data, xfer); - g_free(priv->thumbnail_data); - g_free(priv->thumbnail_mimetype); + /* Hold onto these in case they are equal to passed-in pointers */ + gpointer *old_thumbnail_data = priv->thumbnail_data; + const gchar *old_mimetype = priv->thumbnail_mimetype; if (thumbnail && size > 0) { priv->thumbnail_data = g_memdup(thumbnail, size); @@ -1793,6 +1799,10 @@ purple_xfer_set_thumbnail(PurpleXfer *xfer, gconstpointer thumbnail, priv->thumbnail_size = 0; priv->thumbnail_mimetype = NULL; } + + /* Now it's safe to free the pointers */ + g_free(old_thumbnail_data); + g_free(old_mimetype); } void diff --git a/libpurple/media.c b/libpurple/media.c index e0e1b339a6..e4de10012c 100644 --- a/libpurple/media.c +++ b/libpurple/media.c @@ -482,8 +482,8 @@ purple_media_get_stream(PurpleMedia *media, const gchar *session, const gchar *p for (; streams; streams = g_list_next(streams)) { PurpleMediaStream *stream = streams->data; - if (!strcmp(stream->session->id, session) && - !strcmp(stream->participant, participant)) + if (purple_strequal(stream->session->id, session) && + purple_strequal(stream->participant, participant)) return stream; } @@ -504,9 +504,9 @@ purple_media_get_streams(PurpleMedia *media, const gchar *session, for (; streams; streams = g_list_next(streams)) { PurpleMediaStream *stream = streams->data; if ((session == NULL || - !strcmp(stream->session->id, session)) && + purple_strequal(stream->session->id, session)) && (participant == NULL || - !strcmp(stream->participant, participant))) + purple_strequal(stream->participant, participant))) ret = g_list_append(ret, stream); } @@ -957,7 +957,7 @@ purple_media_param_is_supported(PurpleMedia *media, const gchar *param) params = purple_media_backend_get_available_params(media->priv->backend); for (; *params != NULL; ++params) - if (!strcmp(*params, param)) + if (purple_strequal(*params, param)) return TRUE; #endif return FALSE; diff --git a/libpurple/media/backend-fs2.c b/libpurple/media/backend-fs2.c index dbb0818e1b..fd658ce0c1 100644 --- a/libpurple/media/backend-fs2.c +++ b/libpurple/media/backend-fs2.c @@ -886,8 +886,8 @@ get_stream(PurpleMediaBackendFs2 *self, for (; streams; streams = g_list_next(streams)) { PurpleMediaBackendFs2Stream *stream = streams->data; - if (!strcmp(stream->session->id, sess_id) && - !strcmp(stream->participant, name)) + if (purple_strequal(stream->session->id, sess_id) && + purple_strequal(stream->participant, name)) return stream; } @@ -909,9 +909,9 @@ get_streams(PurpleMediaBackendFs2 *self, for (; streams; streams = g_list_next(streams)) { PurpleMediaBackendFs2Stream *stream = streams->data; - if (sess_id != NULL && strcmp(stream->session->id, sess_id)) + if (sess_id != NULL && !purple_strequal(stream->session->id, sess_id)) continue; - else if (name != NULL && strcmp(stream->participant, name)) + else if (name != NULL && !purple_strequal(stream->participant, name)) continue; else ret = g_list_prepend(ret, stream); @@ -1818,7 +1818,7 @@ create_session(PurpleMediaBackendFs2 *self, const gchar *sess_id, GError *err = NULL; GList *codec_conf = NULL, *iter = NULL; gchar *filename = NULL; - gboolean is_nice = !strcmp(transmitter, "nice"); + gboolean is_nice = purple_strequal(transmitter, "nice"); session = g_new0(PurpleMediaBackendFs2Session, 1); @@ -1892,14 +1892,14 @@ create_session(PurpleMediaBackendFs2 *self, const gchar *sess_id, * receiving the src-pad-added signal. * Only works for non-multicast FsRtpSessions. */ - if (!!strcmp(transmitter, "multicast")) + if (!purple_strequal(transmitter, "multicast")) g_object_set(G_OBJECT(session->session), "no-rtcp-timeout", 0, NULL); /* * Hack to make x264 work with Gmail video. */ - if (is_nice && !strcmp(sess_id, "google-video")) { + if (is_nice && purple_strequal(sess_id, "google-video")) { FsElementAddedNotifier *notifier = fs_element_added_notifier_new(); g_signal_connect(G_OBJECT(notifier), "element-added", @@ -2203,7 +2203,7 @@ create_stream(PurpleMediaBackendFs2 *self, ++_num_params; } - if (turn_ip && !strcmp("nice", transmitter) && !got_turn_from_prpl) { + if (turn_ip && purple_strequal("nice", transmitter) && !got_turn_from_prpl) { G_GNUC_BEGIN_IGNORE_DEPRECATIONS GValueArray *relay_info = g_value_array_new(0); G_GNUC_END_IGNORE_DEPRECATIONS @@ -2219,7 +2219,7 @@ G_GNUC_END_IGNORE_DEPRECATIONS relay_info = append_relay_info(relay_info, turn_ip, port, username, password, "udp"); } - + /* TCP */ port = purple_prefs_get_int("/purple/network/turn_port_tcp"); if (port > 0) { @@ -2278,7 +2278,7 @@ G_GNUC_END_IGNORE_DEPRECATIONS stream->session = session; stream->stream = fsstream; #ifndef HAVE_FARSIGHT - stream->supports_add = !strcmp(transmitter, "nice"); + stream->supports_add = purple_strequal(transmitter, "nice"); #endif priv->streams = g_list_append(priv->streams, stream); @@ -2437,7 +2437,7 @@ purple_media_backend_fs2_codecs_ready(PurpleMediaBackend *self, PURPLE_MEDIA_SEND_VIDEO)) { #ifdef HAVE_FARSIGHT g_object_get(session->session, - "codecs-ready", &ret, NULL); + "codecs-ready", &ret, NULL); #else GList *codecs = NULL; @@ -2702,7 +2702,7 @@ param_to_sdes_type(const gchar *param) guint i; for (i = 0; supported[i] != NULL; ++i) { - if (!strcmp(param, supported[i])) { + if (purple_strequal(param, supported[i])) { return sdes_types[i]; } } diff --git a/libpurple/mediamanager.c b/libpurple/mediamanager.c index 3a17a323ac..47cd808c97 100644 --- a/libpurple/mediamanager.c +++ b/libpurple/mediamanager.c @@ -627,9 +627,9 @@ get_app_data_info_and_lock (PurpleMediaManager *manager, PurpleMediaAppDataInfo *info = i->data; if (info->media == media && - g_strcmp0 (info->session_id, session_id) == 0 && + purple_strequal (info->session_id, session_id) && (participant == NULL || - g_strcmp0 (info->participant, participant) == 0)) { + purple_strequal (info->participant, participant))) { return info; } } @@ -1269,7 +1269,7 @@ purple_media_manager_get_element_info(PurpleMediaManager *manager, for (; iter; iter = g_list_next(iter)) { gchar *element_id = purple_media_element_info_get_id(iter->data); - if (!strcmp(element_id, id)) { + if (purple_strequal(element_id, id)) { g_free(element_id); g_object_ref(iter->data); return iter->data; @@ -1476,11 +1476,8 @@ purple_media_manager_create_output_window(PurpleMediaManager *manager, PurpleMediaOutputWindow *ow = iter->data; if (ow->sink == NULL && ow->media == media && - ((participant != NULL && - ow->participant != NULL && - !strcmp(participant, ow->participant)) || - (participant == ow->participant)) && - !strcmp(session_id, ow->session_id)) { + purple_strequal(participant, ow->participant) && + purple_strequal(session_id, ow->session_id)) { GstBus *bus; GstElement *queue, *convert, *scale; GstElement *tee = purple_media_get_tee(media, @@ -1672,12 +1669,8 @@ purple_media_manager_remove_output_windows(PurpleMediaManager *manager, iter = g_list_next(iter); if (media == ow->media && - ((session_id != NULL && ow->session_id != NULL && - !strcmp(session_id, ow->session_id)) || - (session_id == ow->session_id)) && - ((participant != NULL && ow->participant != NULL && - !strcmp(participant, ow->participant)) || - (participant == ow->participant))) + purple_strequal(session_id, ow->session_id) && + purple_strequal(participant, ow->participant)) purple_media_manager_remove_output_window( manager, ow->id); } diff --git a/libpurple/network.c b/libpurple/network.c index 85f0d6a802..c43e3c7e36 100644 --- a/libpurple/network.c +++ b/libpurple/network.c @@ -977,7 +977,7 @@ nm_get_network_state(void) static void nm_dbus_name_owner_changed_cb(DBusGProxy *proxy, char *service, char *old_owner, char *new_owner, gpointer user_data) { - if (g_str_equal(service, NM_DBUS_SERVICE)) { + if (purple_strequal(service, NM_DBUS_SERVICE)) { gboolean old_owner_good = old_owner && (old_owner[0] != '\0'); gboolean new_owner_good = new_owner && (new_owner[0] != '\0'); diff --git a/libpurple/plugin.c b/libpurple/plugin.c index 61bbc5d589..acddd70450 100644 --- a/libpurple/plugin.c +++ b/libpurple/plugin.c @@ -99,9 +99,9 @@ is_native(const char *filename) if (last_period == NULL) return FALSE; - return !(strcmp(last_period, ".dll") & - strcmp(last_period, ".sl") & - strcmp(last_period, ".so")); + return purple_strequal(last_period, ".dll") || + purple_strequal(last_period, ".sl") || + purple_strequal(last_period, ".so"); } static char * diff --git a/libpurple/plugins/joinpart.c b/libpurple/plugins/joinpart.c index 1e55b05228..cca3ccafd0 100644 --- a/libpurple/plugins/joinpart.c +++ b/libpurple/plugins/joinpart.c @@ -65,7 +65,7 @@ static gboolean joinpart_key_equal(const struct joinpart_key *a, const struct jo else if (b == NULL) return FALSE; - return (a->conv == b->conv) && !strcmp(a->user, b->user); + return (a->conv == b->conv) && purple_strequal(a->user, b->user); } static void joinpart_key_destroy(struct joinpart_key *key) diff --git a/libpurple/plugins/log_reader.c b/libpurple/plugins/log_reader.c index 51b5542ec1..cecd7b31cf 100644 --- a/libpurple/plugins/log_reader.c +++ b/libpurple/plugins/log_reader.c @@ -35,7 +35,7 @@ static int get_month(const char *month) const char *months[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", NULL}; for (iter = 0; months[iter]; iter++) { - if (strcmp(month, months[iter]) == 0) + if (purple_strequal(month, months[iter])) break; } return iter; @@ -635,7 +635,7 @@ static GList *msn_logger_list(PurpleLogType type, const char *sn, PurpleAccount g_return_val_if_fail(sn != NULL, NULL); g_return_val_if_fail(account != NULL, NULL); - if (strcmp(account->protocol_id, "prpl-msn")) + if (!purple_strequal(account->protocol_id, "prpl-msn")) return NULL; logdir = purple_prefs_get_string("/plugins/core/log_reader/msn/log_directory"); @@ -783,7 +783,7 @@ static GList *msn_logger_list(PurpleLogType type, const char *sn, PurpleAccount } path = g_build_filename(path, name, NULL); - if (!strcmp(c, ".xml") && + if (purple_strequal(c, ".xml") && g_file_test(path, G_FILE_TEST_EXISTS)) { found = TRUE; g_free(logfile); @@ -845,7 +845,7 @@ static GList *msn_logger_list(PurpleLogType type, const char *sn, PurpleAccount continue; } - if (strcmp(session_id, old_session_id)) { + if (!purple_strequal(session_id, old_session_id)) { /* * The session ID differs from the last message. * Thus, this is the start of a new conversation. @@ -935,7 +935,7 @@ static char * msn_logger_read (PurpleLog *log, PurpleLogReadFlags *flags) break; } - if (strcmp(new_session_id, data->session_id)) { + if (!purple_strequal(new_session_id, data->session_id)) { /* The session ID differs from the first message. * Thus, this is the start of a new conversation. */ @@ -1789,7 +1789,7 @@ static GList *qip_logger_list(PurpleLogType type, const char *sn, PurpleAccount memset(&tm, 0, sizeof(tm)); /* QIP only supports ICQ. */ - if (strcmp(account->protocol_id, "prpl-icq")) + if (!purple_strequal(account->protocol_id, "prpl-icq")) return NULL; logdir = purple_prefs_get_string("/plugins/core/log_reader/qip/log_directory"); @@ -2261,7 +2261,7 @@ static GList *amsn_logger_list(PurpleLogType type, const char *sn, PurpleAccount return NULL; /* aMSN only works with MSN/WLM */ - if (strcmp(account->protocol_id, "prpl-msn")) + if (!purple_strequal(account->protocol_id, "prpl-msn")) return NULL; username = g_strdup(purple_normalize(account, account->username)); diff --git a/libpurple/plugins/mono/loader/mono-helper.c b/libpurple/plugins/mono/loader/mono-helper.c index 4404544409..c05ffbf806 100644 --- a/libpurple/plugins/mono/loader/mono-helper.c +++ b/libpurple/plugins/mono/loader/mono-helper.c @@ -88,7 +88,7 @@ MonoClass* ml_find_plugin_class(MonoImage *image) pklass = mono_class_get_parent(klass); if (pklass) { - if (strcmp("Plugin", mono_class_get_name(pklass)) == 0) + if (purple_strequal("Plugin", mono_class_get_name(pklass))) return klass; } } @@ -149,8 +149,8 @@ gboolean ml_is_api_dll(MonoImage *image) total = mono_image_get_table_rows (image, MONO_TABLE_TYPEDEF); for (i = 1; i <= total; ++i) { klass = mono_class_get (image, MONO_TOKEN_TYPE_DEF | i); - if (strcmp(mono_class_get_name(klass), "Debug") == 0) - if (strcmp(mono_class_get_namespace(klass), "Purple") == 0) { + if (purple_strequal(mono_class_get_name(klass), "Debug")) + if (purple_strequal(mono_class_get_namespace(klass), "Purple")) { ml_set_api_image(image); return TRUE; } diff --git a/libpurple/plugins/mono/loader/mono.c b/libpurple/plugins/mono/loader/mono.c index 1f378e0901..a44449379e 100644 --- a/libpurple/plugins/mono/loader/mono.c +++ b/libpurple/plugins/mono/loader/mono.c @@ -75,13 +75,13 @@ static gboolean probe_mono_plugin(PurplePlugin *plugin) while ((m = mono_class_get_methods(mplug->klass, &iter))) { purple_debug_info("mono", "plugin method: %s\n", mono_method_get_name(m)); - if (strcmp(mono_method_get_name(m), "Load") == 0) { + if (purple_strequal(mono_method_get_name(m), "Load")) { mplug->load = m; found_load = TRUE; - } else if (strcmp(mono_method_get_name(m), "Unload") == 0) { + } else if (purple_strequal(mono_method_get_name(m), "Unload")) { mplug->unload = m; found_unload = TRUE; - } else if (strcmp(mono_method_get_name(m), "Destroy") == 0) { + } else if (purple_strequal(mono_method_get_name(m), "Destroy")) { mplug->destroy = m; found_destroy = TRUE; } diff --git a/libpurple/plugins/one_time_password.c b/libpurple/plugins/one_time_password.c index caf29212a9..d038aeb650 100644 --- a/libpurple/plugins/one_time_password.c +++ b/libpurple/plugins/one_time_password.c @@ -94,7 +94,7 @@ plugin_unload(PurplePlugin *plugin) options = prpl_info->protocol_options; while (options != NULL) { option = (PurpleAccountOption *) options->data; - if (strcmp(PREF_NAME, purple_account_option_get_setting(option)) == 0) { + if (purple_strequal(PREF_NAME, purple_account_option_get_setting(option))) { prpl_info->protocol_options = g_list_delete_link(prpl_info->protocol_options, options); purple_account_option_destroy(option); break; diff --git a/libpurple/plugins/perl/perl-common.c b/libpurple/plugins/perl/perl-common.c index 49288bff58..1c5410aa58 100644 --- a/libpurple/plugins/perl/perl-common.c +++ b/libpurple/plugins/perl/perl-common.c @@ -223,7 +223,7 @@ execute_perl(const char *function, int argc, char **args) /* Check for changed arguments */ for (i = 0; i < argc; i++) { - if (args[i] && strcmp(args[i], SvPVX(sv_args[i]))) { + if (args[i] && !purple_strequal(args[i], SvPVX(sv_args[i]))) { /* * Shizzel. So the perl script changed one of the parameters, * and we want this change to affect the original parameters. @@ -304,7 +304,7 @@ purple_perl_value_from_sv(PurpleValue *value, SV *sv) break; case PURPLE_TYPE_BOXED: - if (!strcmp(purple_value_get_specific_type(value), "SV")) + if (purple_strequal(purple_value_get_specific_type(value), "SV")) purple_value_set_boxed(value, (sv == &PL_sv_undef ? NULL : sv)); else purple_value_set_boxed(value, sv); @@ -359,7 +359,7 @@ purple_perl_sv_from_value(const PurpleValue *value, va_list list) break; case PURPLE_TYPE_BOXED: - if (!strcmp(purple_value_get_specific_type(value), "SV")) + if (purple_strequal(purple_value_get_specific_type(value), "SV")) { SV *sv = (SV *)purple_perl_get_boxed(value); diff --git a/libpurple/plugins/perl/perl-handlers.c b/libpurple/plugins/perl/perl-handlers.c index 384869458c..1bc6528cb8 100644 --- a/libpurple/plugins/perl/perl-handlers.c +++ b/libpurple/plugins/perl/perl-handlers.c @@ -367,7 +367,7 @@ perl_signal_cb(va_list args, void *data) case PURPLE_TYPE_STRING: if (!*((char **)copy_args[i]) || !SvPVX(sv_args[i]) || - strcmp(*((char **)copy_args[i]), SvPVX(sv_args[i]))) { + !purple_strequal(*((char **)copy_args[i]), SvPVX(sv_args[i]))) { g_free(*((char **)copy_args[i])); *((char **)copy_args[i]) = g_strdup(SvPVutf8_nolen(sv_args[i])); @@ -419,7 +419,7 @@ find_signal_handler(PurplePlugin *plugin, void *instance, const char *signal) if (handler->plugin == plugin && handler->instance == instance && - !strcmp(handler->signal, signal)) { + purple_strequal(handler->signal, signal)) { return handler; } } diff --git a/libpurple/plugins/signals-test.c b/libpurple/plugins/signals-test.c index ad4f693b53..465a4028ac 100644 --- a/libpurple/plugins/signals-test.c +++ b/libpurple/plugins/signals-test.c @@ -691,7 +691,7 @@ jabber_watched_iq(PurpleConnection *pc, const char *type, const char *id, type, id, from, child, child->name, xmlnode_get_namespace(child)); - if (g_str_equal(type, "get") || g_str_equal(type, "set")) { + if (purple_strequal(type, "get") || purple_strequal(type, "set")) { /* Send the requisite reply */ xmlnode *iq = xmlnode_new("iq"); xmlnode_set_attrib(iq, "to", from); diff --git a/libpurple/plugins/ssl/ssl-gnutls.c b/libpurple/plugins/ssl/ssl-gnutls.c index 54a6a23a62..7673ccca47 100644 --- a/libpurple/plugins/ssl/ssl-gnutls.c +++ b/libpurple/plugins/ssl/ssl-gnutls.c @@ -117,7 +117,7 @@ ssl_gnutls_init_gnutls(void) "string for %s\n", host); } else { /* TODO: Validate each of these and complain */ - if (g_str_equal(host, "*")) { + if (purple_strequal(host, "*")) { /* Override the default priority */ g_free(default_priority_str); default_priority_str = g_strdup(prio_str); diff --git a/libpurple/plugins/tcl/tcl_cmds.c b/libpurple/plugins/tcl/tcl_cmds.c index c7a0b3fe0e..d859684779 100644 --- a/libpurple/plugins/tcl/tcl_cmds.c +++ b/libpurple/plugins/tcl/tcl_cmds.c @@ -332,7 +332,7 @@ int tcl_cmd_account(ClientData unused, Tcl_Interp *interp, int objc, Tcl_Obj *CO Tcl_GetString(objv[3])); } else { PurpleStatusPrimitive primitive; - if (strcmp(Tcl_GetString(objv[3]), "-primitive")) { + if (!purple_strequal(Tcl_GetString(objv[3]), "-primitive")) { result = Tcl_NewStringObj("bad option \"", -1); Tcl_AppendObjToObj(result, objv[3]); Tcl_AppendToObj(result, "\": should be -primitive", -1); @@ -400,9 +400,9 @@ static PurpleBlistNode *tcl_list_to_buddy(Tcl_Interp *interp, int count, Tcl_Obj if ((account = tcl_validate_account(elems[2], interp)) == NULL) return NULL; - if (!strcmp(type, "buddy")) { + if (purple_strequal(type, "buddy")) { node = PURPLE_BLIST_NODE(purple_find_buddy(account, name)); - } else if (!strcmp(type, "group")) { + } else if (purple_strequal(type, "group")) { node = PURPLE_BLIST_NODE(purple_blist_find_chat(account, name)); } @@ -469,7 +469,7 @@ int tcl_cmd_buddy(ClientData unused, Tcl_Interp *interp, int objc, Tcl_Obj *CONS Tcl_NewStringObj("buddy too short", -1)); return TCL_ERROR; } - if (strcmp("buddy", Tcl_GetString(elems[0]))) { + if (!purple_strequal("buddy", Tcl_GetString(elems[0]))) { Tcl_SetObjResult(interp, Tcl_NewStringObj("invalid buddy", -1)); return TCL_ERROR; @@ -485,7 +485,7 @@ int tcl_cmd_buddy(ClientData unused, Tcl_Interp *interp, int objc, Tcl_Obj *CONS break; case CMD_BUDDY_LIST: if (objc == 3) { - if (!strcmp("-all", Tcl_GetString(objv[2]))) { + if (purple_strequal("-all", Tcl_GetString(objv[2]))) { all = 1; } else { result = Tcl_NewStringObj("",-1); @@ -1229,7 +1229,7 @@ int tcl_cmd_presence(ClientData unused, Tcl_Interp *interp, int objc, Tcl_Obj *C Tcl_GetString(objv[3])))); } else { PurpleStatusPrimitive primitive; - if (strcmp(Tcl_GetString(objv[3]), "-primitive")) { + if (!purple_strequal(Tcl_GetString(objv[3]), "-primitive")) { result = Tcl_NewStringObj("bad option \"", -1); Tcl_AppendObjToObj(result, objv[3]); Tcl_AppendToObj(result, diff --git a/libpurple/plugins/tcl/tcl_ref.c b/libpurple/plugins/tcl/tcl_ref.c index e51650cd21..f8c5d52252 100644 --- a/libpurple/plugins/tcl/tcl_ref.c +++ b/libpurple/plugins/tcl/tcl_ref.c @@ -55,7 +55,7 @@ void *purple_tcl_ref_get(Tcl_Interp *interp, Tcl_Obj *obj, PurpleStringref *type if (Tcl_ConvertToType(interp, obj, &purple_tcl_ref) != TCL_OK) return NULL; } - if (strcmp(purple_stringref_value(OBJ_REF_TYPE(obj)), + if (!purple_strequal(purple_stringref_value(OBJ_REF_TYPE(obj)), purple_stringref_value(type))) { if (interp) { Tcl_Obj *error = Tcl_NewStringObj("Bad Purple reference type: expected ", -1); diff --git a/libpurple/plugins/tcl/tcl_signals.c b/libpurple/plugins/tcl/tcl_signals.c index c0895905f6..684b2feefc 100644 --- a/libpurple/plugins/tcl/tcl_signals.c +++ b/libpurple/plugins/tcl/tcl_signals.c @@ -118,7 +118,7 @@ void tcl_signal_disconnect(void *instance, const char *signal, Tcl_Interp *inter for (cur = tcl_callbacks; cur != NULL; cur = g_list_next(cur)) { handler = cur->data; if (handler->interp == interp && handler->instance == instance - && !strcmp(signal, Tcl_GetString(handler->signal))) { + && purple_strequal(signal, Tcl_GetString(handler->signal))) { purple_signal_disconnect(instance, signal, handler->interp, PURPLE_CALLBACK(tcl_signal_callback)); cmd = g_string_sized_new(64); diff --git a/libpurple/pounce.c b/libpurple/pounce.c index 185b302dc9..be80a373bf 100644 --- a/libpurple/pounce.c +++ b/libpurple/pounce.c @@ -714,7 +714,7 @@ purple_pounce_destroy_all_by_buddy(PurpleBuddy *buddy) pouncer = purple_pounce_get_pouncer(pounce); pouncee = purple_pounce_get_pouncee(pounce); - if ( (pouncer == bacct) && (strcmp(pouncee, bname) == 0) ) + if ( (pouncer == bacct) && (purple_strequal(pouncee, bname)) ) purple_pounce_destroy(pounce); } } diff --git a/libpurple/privacy.c b/libpurple/privacy.c index 00dd7e4493..b0594417d4 100644 --- a/libpurple/privacy.c +++ b/libpurple/privacy.c @@ -43,7 +43,7 @@ purple_privacy_permit_add(PurpleAccount *account, const char *who, name = g_strdup(purple_normalize(account, who)); for (l = account->permit; l != NULL; l = l->next) { - if (g_str_equal(name, l->data)) + if (purple_strequal(name, l->data)) /* This buddy already exists */ break; } @@ -92,7 +92,7 @@ purple_privacy_permit_remove(PurpleAccount *account, const char *who, name = purple_normalize(account, who); for (l = account->permit; l != NULL; l = l->next) { - if (g_str_equal(name, l->data)) + if (purple_strequal(name, l->data)) /* We found the buddy we were looking for */ break; } @@ -141,7 +141,7 @@ purple_privacy_deny_add(PurpleAccount *account, const char *who, name = g_strdup(purple_normalize(account, who)); for (l = account->deny; l != NULL; l = l->next) { - if (g_str_equal(name, l->data)) + if (purple_strequal(name, l->data)) /* This buddy already exists */ break; } @@ -189,7 +189,7 @@ purple_privacy_deny_remove(PurpleAccount *account, const char *who, normalized = purple_normalize(account, who); for (l = account->deny; l != NULL; l = l->next) { - if (g_str_equal(normalized, l->data)) + if (purple_strequal(normalized, l->data)) /* We found the buddy we were looking for */ break; } @@ -372,7 +372,7 @@ purple_privacy_check(PurpleAccount *account, const char *who) case PURPLE_PRIVACY_ALLOW_USERS: who = purple_normalize(account, who); for (list=account->permit; list!=NULL; list=list->next) { - if (g_str_equal(who, list->data)) + if (purple_strequal(who, list->data)) return TRUE; } return FALSE; @@ -380,7 +380,7 @@ purple_privacy_check(PurpleAccount *account, const char *who) case PURPLE_PRIVACY_DENY_USERS: who = purple_normalize(account, who); for (list=account->deny; list!=NULL; list=list->next) { - if (g_str_equal(who, list->data)) + if (purple_strequal(who, list->data)) return FALSE; } return TRUE; diff --git a/libpurple/protocols/bonjour/bonjour.c b/libpurple/protocols/bonjour/bonjour.c index 3b5bdbaf28..ec0eb1d23a 100644 --- a/libpurple/protocols/bonjour/bonjour.c +++ b/libpurple/protocols/bonjour/bonjour.c @@ -606,9 +606,9 @@ _set_default_name_cb(gpointer data) { for(; tmp != NULL; tmp = tmp->next) { option = tmp->data; - if (strcmp("first", purple_account_option_get_setting(option)) == 0) + if (purple_strequal("first", purple_account_option_get_setting(option))) purple_account_option_set_default_string(option, default_firstname); - else if (strcmp("last", purple_account_option_get_setting(option)) == 0) + else if (purple_strequal("last", purple_account_option_get_setting(option))) purple_account_option_set_default_string(option, default_lastname); } diff --git a/libpurple/protocols/bonjour/bonjour_ft.c b/libpurple/protocols/bonjour/bonjour_ft.c index b3beb0ba52..f3d5d3542f 100644 --- a/libpurple/protocols/bonjour/bonjour_ft.c +++ b/libpurple/protocols/bonjour/bonjour_ft.c @@ -67,14 +67,14 @@ xep_ft_si_reject(BonjourData *bd, const char *id, const char *to, const char *er xmlnode_set_attrib(error_node, "type", error_type); /* TODO: Make this better */ - if (!strcmp(error_code, "403")) { + if (purple_strequal(error_code, "403")) { xmlnode *tmp_node = xmlnode_new_child(error_node, "forbidden"); xmlnode_set_namespace(tmp_node, "urn:ietf:params:xml:ns:xmpp-stanzas"); tmp_node = xmlnode_new_child(error_node, "text"); xmlnode_set_namespace(tmp_node, "urn:ietf:params:xml:ns:xmpp-stanzas"); xmlnode_insert_data(tmp_node, "Offer Declined", -1); - } else if (!strcmp(error_code, "404")) { + } else if (purple_strequal(error_code, "404")) { xmlnode *tmp_node = xmlnode_new_child(error_node, "item-not-found"); xmlnode_set_namespace(tmp_node, "urn:ietf:params:xml:ns:xmpp-stanzas"); } @@ -165,8 +165,8 @@ bonjour_si_xfer_find(BonjourData *bd, const char *sid, const char *from) xf = xfer->data; if(xf == NULL) break; - if(xf->sid && xfer->who && !strcmp(xf->sid, sid) && - !strcmp(xfer->who, from)) + if(purple_strequal(xf->sid, sid) && + purple_strequal(xfer->who, from)) return xfer; } @@ -451,34 +451,38 @@ xep_si_parse(PurpleConnection *pc, xmlnode *packet, PurpleBuddy *pb) if(!type) return; - if(!strcmp(type, "set")) { - const char *profile; + if(purple_strequal(type, "set")) { xmlnode *si; gboolean parsed_receive = FALSE; si = xmlnode_get_child(packet, "si"); purple_debug_info("bonjour", "si offer Message type - SET.\n"); - if (si && (profile = xmlnode_get_attrib(si, "profile")) - && !strcmp(profile, "http://jabber.org/protocol/si/profile/file-transfer")) { - const char *filename = NULL, *filesize_str = NULL; - goffset filesize = 0; - xmlnode *file; - - const char *sid = xmlnode_get_attrib(si, "id"); - - if ((file = xmlnode_get_child(si, "file"))) { - filename = xmlnode_get_attrib(file, "name"); - if((filesize_str = xmlnode_get_attrib(file, "size"))) - filesize = g_ascii_strtoll(filesize_str, NULL, 10); - } + if (si) { + const char *profile; + + profile = xmlnode_get_attrib(si, "profile"); + + if (purple_strequal(profile, "http://jabber.org/protocol/si/profile/file-transfer")) { + const char *filename = NULL, *filesize_str = NULL; + goffset filesize = 0; + xmlnode *file; + + const char *sid = xmlnode_get_attrib(si, "id"); + + if ((file = xmlnode_get_child(si, "file"))) { + filename = xmlnode_get_attrib(file, "name"); + if((filesize_str = xmlnode_get_attrib(file, "size"))) + filesize = g_ascii_strtoll(filesize_str, NULL, 10); + } - /* TODO: Make sure that it is advertising a bytestreams transfer */ + /* TODO: Make sure that it is advertising a bytestreams transfer */ - if (filename) { - bonjour_xfer_receive(pc, id, sid, name, filesize, filename, XEP_BYTESTREAMS); + if (filename) { + bonjour_xfer_receive(pc, id, sid, name, filesize, filename, XEP_BYTESTREAMS); - parsed_receive = TRUE; + parsed_receive = TRUE; + } } } @@ -489,7 +493,7 @@ xep_si_parse(PurpleConnection *pc, xmlnode *packet, PurpleBuddy *pb) xep_ft_si_reject(bd, id, name, "403", "cancel"); /*TODO: Send Cancel (501) */ } - } else if(!strcmp(type, "result")) { + } else if(purple_strequal(type, "result")) { purple_debug_info("bonjour", "si offer Message type - RESULT.\n"); xfer = bonjour_si_xfer_find(bd, id, name); @@ -501,7 +505,7 @@ xep_si_parse(PurpleConnection *pc, xmlnode *packet, PurpleBuddy *pb) } else bonjour_bytestreams_init(xfer); - } else if(!strcmp(type, "error")) { + } else if(purple_strequal(type, "error")) { purple_debug_info("bonjour", "si offer Message type - ERROR.\n"); xfer = bonjour_si_xfer_find(bd, id, name); @@ -517,7 +521,7 @@ xep_si_parse(PurpleConnection *pc, xmlnode *packet, PurpleBuddy *pb) /** * Will compare a host with a buddy_ip. * - * Additionally to a common '!strcmp(host, buddy_ip)', it will also return TRUE + * Additionally to a common 'purple_strequal(host, buddy_ip)', it will also return TRUE * if 'host' is a link local IPv6 address without an appended interface * identifier and 'buddy_ip' string is "host" + "%iface". * @@ -565,7 +569,7 @@ xep_cmp_addr(const char *host, const char *buddy_ip) out: #endif - return !strcmp(host, buddy_ip); + return purple_strequal(host, buddy_ip); } static inline gint @@ -721,7 +725,7 @@ xep_bytestreams_parse(PurpleConnection *pc, xmlnode *packet, PurpleBuddy *pb) if (!query) return; - if(strcmp(type, "set")) { + if(!purple_strequal(type, "set")) { purple_debug_info("bonjour", "bytestream offer Message type - Unknown-%s.\n", type); return; } diff --git a/libpurple/protocols/bonjour/buddy.c b/libpurple/protocols/bonjour/buddy.c index 890a7e1b09..1f2f06379e 100644 --- a/libpurple/protocols/bonjour/buddy.c +++ b/libpurple/protocols/bonjour/buddy.c @@ -67,31 +67,31 @@ set_bonjour_buddy_value(BonjourBuddy* buddy, const char *record_key, const char g_return_if_fail(record_key != NULL); - if (!strcmp(record_key, "1st")) + if (purple_strequal(record_key, "1st")) fld = &buddy->first; - else if(!strcmp(record_key, "email")) + else if(purple_strequal(record_key, "email")) fld = &buddy->email; - else if(!strcmp(record_key, "ext")) + else if(purple_strequal(record_key, "ext")) fld = &buddy->ext; - else if(!strcmp(record_key, "jid")) + else if(purple_strequal(record_key, "jid")) fld = &buddy->jid; - else if(!strcmp(record_key, "last")) + else if(purple_strequal(record_key, "last")) fld = &buddy->last; - else if(!strcmp(record_key, "msg")) + else if(purple_strequal(record_key, "msg")) fld = &buddy->msg; - else if(!strcmp(record_key, "nick")) + else if(purple_strequal(record_key, "nick")) fld = &buddy->nick; - else if(!strcmp(record_key, "node")) + else if(purple_strequal(record_key, "node")) fld = &buddy->node; - else if(!strcmp(record_key, "phsh")) + else if(purple_strequal(record_key, "phsh")) fld = &buddy->phsh; - else if(!strcmp(record_key, "status")) + else if(purple_strequal(record_key, "status")) fld = &buddy->status; - else if(!strcmp(record_key, "vc")) + else if(purple_strequal(record_key, "vc")) fld = &buddy->vc; - else if(!strcmp(record_key, "ver")) + else if(purple_strequal(record_key, "ver")) fld = &buddy->ver; - else if(!strcmp(record_key, "AIM")) + else if(purple_strequal(record_key, "AIM")) fld = &buddy->AIM; if(fld == NULL) @@ -193,7 +193,7 @@ bonjour_buddy_add_to_purple(BonjourBuddy *bonjour_buddy, PurpleBuddy *buddy) /* Deal with the buddy icon */ old_hash = purple_buddy_icons_get_checksum_for_user(buddy); new_hash = (bonjour_buddy->phsh && *(bonjour_buddy->phsh)) ? bonjour_buddy->phsh : NULL; - if (new_hash && (!old_hash || strcmp(old_hash, new_hash) != 0)) { + if (new_hash && !purple_strequal(old_hash, new_hash)) { /* Look up the new icon data */ /* TODO: Make sure the hash assigned to the retrieved buddy icon is the same * as what we looked up. */ diff --git a/libpurple/protocols/bonjour/jabber.c b/libpurple/protocols/bonjour/jabber.c index 8f0b7f2533..5db4e7cbc9 100644 --- a/libpurple/protocols/bonjour/jabber.c +++ b/libpurple/protocols/bonjour/jabber.c @@ -373,9 +373,9 @@ void bonjour_jabber_process_packet(PurpleBuddy *pb, xmlnode *packet) { g_return_if_fail(packet != NULL); g_return_if_fail(pb != NULL); - if (g_strcmp0(packet->name, "message") == 0) + if (purple_strequal(packet->name, "message")) _jabber_parse_and_write_message_to_ui(packet, pb); - else if (g_strcmp0(packet->name, "iq") == 0) + else if (purple_strequal(packet->name, "iq")) xep_iq_parse(packet, pb); else { purple_debug_warning("bonjour", "Unknown packet: %s\n", @@ -1155,7 +1155,7 @@ bonjour_jabber_close_conversation(BonjourJabberConversation *bconv) tmp_next = xfers->next; /* We only need to cancel this if it hasn't actually started transferring. */ /* This will change if we ever support IBB transfers. */ - if (strcmp(xfer->who, purple_buddy_get_name(bconv->pb)) == 0 + if (purple_strequal(xfer->who, purple_buddy_get_name(bconv->pb)) && (purple_xfer_get_status(xfer) == PURPLE_XFER_STATUS_NOT_STARTED || purple_xfer_get_status(xfer) == PURPLE_XFER_STATUS_UNKNOWN)) { purple_xfer_cancel_remote(xfer); diff --git a/libpurple/protocols/bonjour/mdns_avahi.c b/libpurple/protocols/bonjour/mdns_avahi.c index 5f28a70a43..109fd7312d 100644 --- a/libpurple/protocols/bonjour/mdns_avahi.c +++ b/libpurple/protocols/bonjour/mdns_avahi.c @@ -71,9 +71,9 @@ _find_resolver_data(gconstpointer a, gconstpointer b) { if(rd_a->interface == rd_b->interface && rd_a->protocol == rd_b->protocol - && !strcmp(rd_a->name, rd_b->name) - && !strcmp(rd_a->type, rd_b->type) - && !strcmp(rd_a->domain, rd_b->domain)) { + && purple_strequal(rd_a->name, rd_b->name) + && purple_strequal(rd_a->type, rd_b->type) + && purple_strequal(rd_a->domain, rd_b->domain)) { ret = 0; } @@ -185,7 +185,7 @@ _resolver_callback(AvahiServiceResolver *r, AvahiIfIndex interface, AvahiProtoco purple_debug_info("bonjour", "_resolve_callback - name:%s ip:%s prev_ip:%s\n", name, ip, rd->ip); - if (rd->ip == NULL || strcmp(rd->ip, ip) != 0) { + if (rd->ip == NULL || !purple_strequal(rd->ip, ip)) { /* We store duplicates in bb->ips, so we always remove the one */ if (rd->ip != NULL) { bb->ips = g_slist_remove(bb->ips, rd->ip); diff --git a/libpurple/protocols/bonjour/mdns_dns_sd.c b/libpurple/protocols/bonjour/mdns_dns_sd.c index 318c784e73..2713ef0ebe 100644 --- a/libpurple/protocols/bonjour/mdns_dns_sd.c +++ b/libpurple/protocols/bonjour/mdns_dns_sd.c @@ -79,9 +79,9 @@ _find_resolver_data(gconstpointer a, gconstpointer b) { gint ret = 1; if(rd_a->if_idx == rd_b->if_idx - && !strcmp(rd_a->name, rd_b->name) - && !strcmp(rd_a->type, rd_b->type) - && !strcmp(rd_a->domain, rd_b->domain)) { + && purple_strequal(rd_a->name, rd_b->name) + && purple_strequal(rd_a->type, rd_b->type) + && purple_strequal(rd_a->domain, rd_b->domain)) { ret = 0; } @@ -357,7 +357,7 @@ _mdns_service_browse_callback(DNSServiceRef sdRef, DNSServiceFlags flags, uint32 else { while (tmp) { BonjourBuddy *bb_tmp = tmp->data; - if (!strcmp(bb_tmp->name, serviceName)) { + if (purple_strequal(bb_tmp->name, serviceName)) { bb = bb_tmp; break; } diff --git a/libpurple/protocols/gg/gg-utils.c b/libpurple/protocols/gg/gg-utils.c index 96e3b295ce..8fa5f6831f 100644 --- a/libpurple/protocols/gg/gg-utils.c +++ b/libpurple/protocols/gg/gg-utils.c @@ -129,7 +129,7 @@ void ggp_status_fake_to_self(PurpleAccount *account) msg = NULL; status_id = purple_status_get_id(status); - if (strcmp(status_id, "invisible") == 0) { + if (purple_strequal(status_id, "invisible")) { status_id = "offline"; } diff --git a/libpurple/protocols/gg/gg.c b/libpurple/protocols/gg/gg.c index 4931a41743..b1e153eb16 100644 --- a/libpurple/protocols/gg/gg.c +++ b/libpurple/protocols/gg/gg.c @@ -1717,7 +1717,7 @@ static void ggp_login_to(PurpleAccount *account, uint32_t server) encryption_type = purple_account_get_string(account, "encryption", "none"); purple_debug_info("gg", "Requested encryption type: %s\n", encryption_type); - if (strcmp(encryption_type, "opportunistic_tls") == 0) + if (purple_strequal(encryption_type, "opportunistic_tls")) glp->tls = 1; else glp->tls = 0; @@ -2012,19 +2012,19 @@ static int ggp_to_gg_status(PurpleStatus *status, char **msg) purple_debug_info("gg", "ggp_to_gg_status: Requested status = %s\n", status_id); - if (strcmp(status_id, "available") == 0) { + if (purple_strequal(status_id, "available")) { new_status = GG_STATUS_AVAIL; new_status_descr = GG_STATUS_AVAIL_DESCR; - } else if (strcmp(status_id, "away") == 0) { + } else if (purple_strequal(status_id, "away")) { new_status = GG_STATUS_BUSY; new_status_descr = GG_STATUS_BUSY_DESCR; - } else if (strcmp(status_id, "unavailable") == 0) { + } else if (purple_strequal(status_id, "unavailable")) { new_status = GG_STATUS_DND; new_status_descr = GG_STATUS_DND_DESCR; - } else if (strcmp(status_id, "invisible") == 0) { + } else if (purple_strequal(status_id, "invisible")) { new_status = GG_STATUS_INVISIBLE; new_status_descr = GG_STATUS_INVISIBLE_DESCR; - } else if (strcmp(status_id, "offline") == 0) { + } else if (purple_strequal(status_id, "offline")) { new_status = GG_STATUS_NOT_AVAIL; new_status_descr = GG_STATUS_NOT_AVAIL_DESCR; } else { @@ -2090,7 +2090,7 @@ static void ggp_add_buddy(PurpleConnection *gc, PurpleBuddy *buddy, PurpleGroup gg_add_notify(info->session, ggp_str_to_uin(name)); account = purple_connection_get_account(gc); - if (strcmp(purple_account_get_username(account), name) == 0) { + if (purple_strequal(purple_account_get_username(account), name)) { ggp_status_fake_to_self(account); } } diff --git a/libpurple/protocols/gg/lib/common.c b/libpurple/protocols/gg/lib/common.c index 12fa9eee52..e4d2826f1f 100644 --- a/libpurple/protocols/gg/lib/common.c +++ b/libpurple/protocols/gg/lib/common.c @@ -161,7 +161,7 @@ char *gg_get_line(char **ptr) { char *foo, *res; - if (!ptr || !*ptr || !strcmp(*ptr, "")) + if (!ptr || !*ptr) return NULL; res = *ptr; diff --git a/libpurple/protocols/gg/lib/events.c b/libpurple/protocols/gg/lib/events.c index af1a37620c..603f43ac27 100644 --- a/libpurple/protocols/gg/lib/events.c +++ b/libpurple/protocols/gg/lib/events.c @@ -1087,7 +1087,7 @@ static gg_action_t gg_handle_reading_hub_proxy(struct gg_session *sess, port = atoi(tmp + 1); } - if (strcmp(host, "notoperating") == 0) { + if (purple_strequal(host, "notoperating")) { gg_debug_session(sess, GG_DEBUG_MISC, "// gg_watch_fd() service unavailable\n"); e->event.failure = GG_FAILURE_UNAVAILABLE; return GG_ACTION_FAIL; diff --git a/libpurple/protocols/gg/lib/libgadu.c b/libpurple/protocols/gg/lib/libgadu.c index fb3dd43e00..bee283310f 100644 --- a/libpurple/protocols/gg/lib/libgadu.c +++ b/libpurple/protocols/gg/lib/libgadu.c @@ -991,7 +991,7 @@ struct gg_session *gg_login(const struct gg_login_params *p) } else sess->protocol_version = p->protocol_version; - if (p->client_version && strcmp(p->client_version, "-") != 0) + if (p->client_version && !purple_strequal(p->client_version, "-")) sess->client_version = strdup(p->client_version); sess->last_sysmsg = p->last_sysmsg; sess->image_size = p->image_size; diff --git a/libpurple/protocols/gg/lib/protobuf-c.c b/libpurple/protocols/gg/lib/protobuf-c.c index 7b8d07bd44..4e16fe1c38 100644 --- a/libpurple/protocols/gg/lib/protobuf-c.c +++ b/libpurple/protocols/gg/lib/protobuf-c.c @@ -3204,7 +3204,7 @@ protobuf_c_enum_descriptor_get_value_by_name(const ProtobufCEnumDescriptor *desc } if (count == 0) return NULL; - if (strcmp(desc->values_by_name[start].name, name) == 0) + if (purple_strequal(desc->values_by_name[start].name, name)) return desc->values + desc->values_by_name[start].index; return NULL; } @@ -3243,7 +3243,7 @@ protobuf_c_message_descriptor_get_field_by_name(const ProtobufCMessageDescriptor if (count == 0) return NULL; field = desc->fields + desc->fields_sorted_by_name[start]; - if (strcmp(field->name, name) == 0) + if (purple_strequal(field->name, name)) return field; return NULL; } @@ -3282,7 +3282,7 @@ protobuf_c_service_descriptor_get_method_by_name(const ProtobufCServiceDescripto } if (count == 0) return NULL; - if (strcmp(desc->methods[desc->method_indices_by_name[start]].name, name) == 0) + if (purple_strequal(desc->methods[desc->method_indices_by_name[start]].name, name)) return desc->methods + desc->method_indices_by_name[start]; return NULL; } diff --git a/libpurple/protocols/gg/lib/pubdir50.c b/libpurple/protocols/gg/lib/pubdir50.c index 9cef02082c..4a43a3a4ba 100644 --- a/libpurple/protocols/gg/lib/pubdir50.c +++ b/libpurple/protocols/gg/lib/pubdir50.c @@ -88,7 +88,7 @@ static int gg_pubdir50_add_n(gg_pubdir50_t req, int num, const char *field, cons } for (i = 0; i < req->entries_count; i++) { - if (req->entries[i].num != num || strcmp(req->entries[i].field, field)) + if (req->entries[i].num != num || !purple_strequal(req->entries[i].field, field)) continue; free(req->entries[i].value); diff --git a/libpurple/protocols/irc/cmds.c b/libpurple/protocols/irc/cmds.c index 9b8de7e96a..58774e36a8 100644 --- a/libpurple/protocols/irc/cmds.c +++ b/libpurple/protocols/irc/cmds.c @@ -54,7 +54,7 @@ int irc_cmd_away(struct irc_conn *irc, const char *cmd, const char *target, cons { char *buf, *message; - if (args[0] && strcmp(cmd, "back")) { + if (args[0] && !purple_strequal(cmd, "back")) { message = purple_markup_strip_html(args[0]); purple_util_chrreplace(message, '\n', ' '); buf = irc_format(irc, "v:", "AWAY", message); @@ -279,7 +279,7 @@ int irc_cmd_mode(struct irc_conn *irc, const char *cmd, const char *target, cons if (!args) return 0; - if (!strcmp(cmd, "mode")) { + if (purple_strequal(cmd, "mode")) { if (!args[0] && irc_ischannel(target)) buf = irc_format(irc, "vc", "MODE", target); else if (args[0] && (*args[0] == '+' || *args[0] == '-')) @@ -288,7 +288,7 @@ int irc_cmd_mode(struct irc_conn *irc, const char *cmd, const char *target, cons buf = irc_format(irc, "vn", "MODE", args[0]); else return 0; - } else if (!strcmp(cmd, "umode")) { + } else if (purple_strequal(cmd, "umode")) { if (!args[0]) return 0; gc = purple_account_get_connection(irc->account); @@ -342,16 +342,16 @@ int irc_cmd_op(struct irc_conn *irc, const char *cmd, const char *target, const if (!args || !args[0] || !*args[0]) return 0; - if (!strcmp(cmd, "op")) { + if (purple_strequal(cmd, "op")) { sign = "+"; mode = "o"; - } else if (!strcmp(cmd, "deop")) { + } else if (purple_strequal(cmd, "deop")) { sign = "-"; mode = "o"; - } else if (!strcmp(cmd, "voice")) { + } else if (purple_strequal(cmd, "voice")) { sign = "+"; mode = "v"; - } else if (!strcmp(cmd, "devoice")) { + } else if (purple_strequal(cmd, "devoice")) { sign = "-"; mode = "v"; } else { @@ -449,7 +449,7 @@ int irc_cmd_privmsg(struct irc_conn *irc, const char *cmd, const char *target, c msg = g_strndup(cur, end - cur); - if(!strcmp(cmd, "notice")) + if(purple_strequal(cmd, "notice")) buf = irc_format(irc, "vt:", "NOTICE", args[0], msg); else buf = irc_format(irc, "vt:", "PRIVMSG", args[0], msg); @@ -619,9 +619,9 @@ int irc_cmd_wallops(struct irc_conn *irc, const char *cmd, const char *target, c if (!args || !args[0]) return 0; - if (!strcmp(cmd, "wallops")) + if (purple_strequal(cmd, "wallops")) buf = irc_format(irc, "v:", "WALLOPS", args[0]); - else if (!strcmp(cmd, "operwall")) + else if (purple_strequal(cmd, "operwall")) buf = irc_format(irc, "v:", "OPERWALL", args[0]); else return 0; diff --git a/libpurple/protocols/irc/irc.c b/libpurple/protocols/irc/irc.c index 633dbb8475..2078985d90 100644 --- a/libpurple/protocols/irc/irc.c +++ b/libpurple/protocols/irc/irc.c @@ -157,7 +157,7 @@ int irc_send_len(struct irc_conn *irc, const char *buf, int buflen) char *tosend = g_strdup(buf); purple_signal_emit(_irc_plugin, "irc-sending-text", purple_account_get_connection(irc->account), &tosend); - + if (tosend == NULL) return 0; @@ -595,12 +595,12 @@ static void irc_set_status(PurpleAccount *account, PurpleStatus *status) args[0] = NULL; - if (!strcmp(status_id, "away")) { + if (purple_strequal(status_id, "away")) { args[0] = purple_status_get_attr_string(status, "message"); if ((args[0] == NULL) || (*args[0] == '\0')) args[0] = _("Away"); irc_cmd_away(irc, "away", NULL, args); - } else if (!strcmp(status_id, "available")) { + } else if (purple_strequal(status_id, "available")) { irc_cmd_away(irc, "back", NULL, args); } } diff --git a/libpurple/protocols/irc/msgs.c b/libpurple/protocols/irc/msgs.c index 53e5f8373c..decec7e5a8 100644 --- a/libpurple/protocols/irc/msgs.c +++ b/libpurple/protocols/irc/msgs.c @@ -223,13 +223,13 @@ void irc_msg_features(struct irc_conn *irc, const char *name, const char *from, void irc_msg_luser(struct irc_conn *irc, const char *name, const char *from, char **args) { - if (!strcmp(name, "251")) { + if (purple_strequal(name, "251")) { /* 251 is required, so we pluck our nick from here and * finalize connection */ irc_connected(irc, args[0]); /* Some IRC servers seem to not send a 255 numeric, so * I guess we can't require it; 251 will do. */ - /* } else if (!strcmp(name, "255")) { */ + /* } else if (purple_strequal(name, "255")) { */ } } @@ -268,7 +268,7 @@ void irc_msg_ban(struct irc_conn *irc, const char *name, const char *from, char convo = purple_find_conversation_with_account(PURPLE_CONV_TYPE_CHAT, args[1], irc->account); - if (!strcmp(name, "367")) { + if (purple_strequal(name, "367")) { char *msg = NULL; /* Ban list entry */ if (args[3] && args[4]) { @@ -290,7 +290,7 @@ void irc_msg_ban(struct irc_conn *irc, const char *name, const char *from, char purple_debug_info("irc", "%s\n", msg); } g_free(msg); - } else if (!strcmp(name, "368")) { + } else if (purple_strequal(name, "368")) { if (!convo) return; /* End of ban list */ @@ -352,44 +352,44 @@ void irc_msg_chanmode(struct irc_conn *irc, const char *name, const char *from, void irc_msg_whois(struct irc_conn *irc, const char *name, const char *from, char **args) { if (!irc->whois.nick) { - purple_debug(PURPLE_DEBUG_WARNING, "irc", "Unexpected %s reply for %s\n", !strcmp(name, "314") ? "WHOWAS" : "WHOIS" + purple_debug(PURPLE_DEBUG_WARNING, "irc", "Unexpected %s reply for %s\n", purple_strequal(name, "314") ? "WHOWAS" : "WHOIS" , args[1]); return; } if (purple_utf8_strcasecmp(irc->whois.nick, args[1])) { - purple_debug(PURPLE_DEBUG_WARNING, "irc", "Got %s reply for %s while waiting for %s\n", !strcmp(name, "314") ? "WHOWAS" : "WHOIS" + purple_debug(PURPLE_DEBUG_WARNING, "irc", "Got %s reply for %s while waiting for %s\n", purple_strequal(name, "314") ? "WHOWAS" : "WHOIS" , args[1], irc->whois.nick); return; } - if (!strcmp(name, "301")) { + if (purple_strequal(name, "301")) { irc->whois.away = g_strdup(args[2]); - } else if (!strcmp(name, "311") || !strcmp(name, "314")) { + } else if (purple_strequal(name, "311") || purple_strequal(name, "314")) { irc->whois.ident = g_strdup(args[2]); irc->whois.host = g_strdup(args[3]); irc->whois.real = g_strdup(args[5]); - } else if (!strcmp(name, "312")) { + } else if (purple_strequal(name, "312")) { irc->whois.server = g_strdup(args[2]); irc->whois.serverinfo = g_strdup(args[3]); - } else if (!strcmp(name, "313")) { + } else if (purple_strequal(name, "313")) { irc->whois.ircop = 1; - } else if (!strcmp(name, "317")) { + } else if (purple_strequal(name, "317")) { irc->whois.idle = atoi(args[2]); if (args[3]) irc->whois.signon = (time_t)atoi(args[3]); - } else if (!strcmp(name, "319")) { + } else if (purple_strequal(name, "319")) { if (irc->whois.channels == NULL) { irc->whois.channels = g_string_new(args[2]); } else { irc->whois.channels = g_string_append(irc->whois.channels, args[2]); } - } else if (!strcmp(name, "320")) { + } else if (purple_strequal(name, "320")) { irc->whois.identified = 1; - } else if (!strcmp(name, "330")) { + } else if (purple_strequal(name, "330")) { purple_debug(PURPLE_DEBUG_INFO, "irc", "330 %s: 1=[%s] 2=[%s] 3=[%s]", name, args[1], args[2], args[3]); - if (!strcmp(args[3], "is logged in as")) + if (purple_strequal(args[3], "is logged in as")) irc->whois.login = g_strdup(args[2]); } } @@ -401,12 +401,12 @@ void irc_msg_endwhois(struct irc_conn *irc, const char *name, const char *from, PurpleNotifyUserInfo *user_info; if (!irc->whois.nick) { - purple_debug(PURPLE_DEBUG_WARNING, "irc", "Unexpected End of %s for %s\n", !strcmp(name, "369") ? "WHOWAS" : "WHOIS" + purple_debug(PURPLE_DEBUG_WARNING, "irc", "Unexpected End of %s for %s\n", purple_strequal(name, "369") ? "WHOWAS" : "WHOIS" , args[1]); return; } if (purple_utf8_strcasecmp(irc->whois.nick, args[1])) { - purple_debug(PURPLE_DEBUG_WARNING, "irc", "Received end of %s for %s, expecting %s\n", !strcmp(name, "369") ? "WHOWAS" : "WHOIS" + purple_debug(PURPLE_DEBUG_WARNING, "irc", "Received end of %s for %s, expecting %s\n", purple_strequal(name, "369") ? "WHOWAS" : "WHOIS" , args[1], irc->whois.nick); return; } @@ -461,7 +461,7 @@ void irc_msg_endwhois(struct irc_conn *irc, const char *name, const char *from, purple_notify_user_info_add_pair(user_info, _("Online since"), purple_date_format_full(localtime(&irc->whois.signon))); } - if (!strcmp(irc->whois.nick, "Paco-Paco")) { + if (purple_strequal(irc->whois.nick, "Paco-Paco")) { purple_notify_user_info_add_pair(user_info, _("<b>Defining adjective:</b>"), _("Glorious")); } @@ -477,13 +477,13 @@ void irc_msg_endwhois(struct irc_conn *irc, const char *name, const char *from, void irc_msg_who(struct irc_conn *irc, const char *name, const char *from, char **args) { - if (!strcmp(name, "352")) { + if (purple_strequal(name, "352")) { PurpleConversation *conv; PurpleConvChat *chat; PurpleConvChatBuddy *cb; - + char *cur, *userhost, *realname; - + PurpleConvChatBuddyFlags flags; GList *keys = NULL, *values = NULL; @@ -500,7 +500,7 @@ void irc_msg_who(struct irc_conn *irc, const char *name, const char *from, char } chat = PURPLE_CONV_CHAT(conv); - + userhost = g_strdup_printf("%s@%s", args[2], args[3]); /* The final argument is a :-argument, but annoyingly @@ -512,21 +512,21 @@ void irc_msg_who(struct irc_conn *irc, const char *name, const char *from, char } } realname = g_strdup(cur); - + keys = g_list_prepend(keys, "userhost"); values = g_list_prepend(values, userhost); - + keys = g_list_prepend(keys, "realname"); values = g_list_prepend(values, realname); - + purple_conv_chat_cb_set_attributes(chat, cb, keys, values); - + g_list_free(keys); g_list_free(values); - + g_free(userhost); g_free(realname); - + flags = cb->flags; /* FIXME: I'm not sure this is really a good idea, now @@ -546,19 +546,19 @@ void irc_msg_list(struct irc_conn *irc, const char *name, const char *from, char if (!irc->roomlist) return; - if (!strcmp(name, "321")) { + if (purple_strequal(name, "321")) { purple_roomlist_set_in_progress(irc->roomlist, TRUE); return; } - if (!strcmp(name, "323")) { + if (purple_strequal(name, "323")) { purple_roomlist_set_in_progress(irc->roomlist, FALSE); purple_roomlist_unref(irc->roomlist); irc->roomlist = NULL; return; } - if (!strcmp(name, "322")) { + if (purple_strequal(name, "322")) { PurpleRoomlistRoom *room; char *topic; @@ -582,7 +582,7 @@ void irc_msg_topic(struct irc_conn *irc, const char *name, const char *from, cha char *chan, *topic, *msg, *nick, *tmp, *tmp2; PurpleConversation *convo; - if (!strcmp(name, "topic")) { + if (purple_strequal(name, "topic")) { chan = args[0]; topic = irc_mirc2txt (args[1]); } else { @@ -601,9 +601,9 @@ void irc_msg_topic(struct irc_conn *irc, const char *name, const char *from, cha tmp = g_markup_escape_text(topic, -1); tmp2 = purple_markup_linkify(tmp); g_free(tmp); - if (!strcmp(name, "topic")) { + if (purple_strequal(name, "topic")) { const char *current_topic = purple_conv_chat_get_topic(PURPLE_CONV_CHAT(convo)); - if (!(current_topic != NULL && strcmp(tmp2, current_topic) == 0)) + if (!(current_topic != NULL && purple_strequal(tmp2, current_topic))) { char *nick_esc; nick = irc_mask_nick(from); @@ -676,7 +676,7 @@ void irc_msg_names(struct irc_conn *irc, const char *name, const char *from, cha char *names, *cur, *end, *tmp, *msg; PurpleConversation *convo; - if (!strcmp(name, "366")) { + if (purple_strequal(name, "366")) { convo = purple_find_conversation_with_account(PURPLE_CONV_TYPE_ANY, args[1], irc->account); if (!convo) { purple_debug(PURPLE_DEBUG_ERROR, "irc", "Got a NAMES list for %s, which doesn't exist\n", args[1]); @@ -756,17 +756,17 @@ void irc_msg_motd(struct irc_conn *irc, const char *name, const char *from, char { char *escaped; - if (!strcmp(name, "375")) { + if (purple_strequal(name, "375")) { if (irc->motd) g_string_free(irc->motd, TRUE); irc->motd = g_string_new(""); return; - } else if (!strcmp(name, "376")) { + } else if (purple_strequal(name, "376")) { /* dircproxy 1.0.5 does not send 251 on reconnection, so * finalize the connection here if it is not already done. */ irc_connected(irc, args[0]); return; - } else if (!strcmp(name, "422")) { + } else if (purple_strequal(name, "422")) { /* in case there is no 251, and no MOTD set, finalize the connection. * (and clear the motd for good measure). */ @@ -970,12 +970,12 @@ void irc_msg_join(struct irc_conn *irc, const char *name, const char *from, char } purple_conversation_set_data(convo, IRC_NAMES_FLAG, GINT_TO_POINTER(FALSE)); - + // Get the real name and user host for all participants. buf = irc_format(irc, "vc", "WHO", args[0]); irc_send(irc, buf); g_free(buf); - + /* Until purple_conversation_present does something that * one would expect in Pidgin, this call produces buggy * behavior both for the /join and auto-join cases. */ @@ -992,15 +992,15 @@ void irc_msg_join(struct irc_conn *irc, const char *name, const char *from, char userhost = irc_mask_userhost(from); chat = PURPLE_CONV_CHAT(convo); - + purple_conv_chat_add_user(chat, nick, userhost, PURPLE_CBFLAGS_NONE, TRUE); - + cb = purple_conv_chat_cb_find(chat, nick); - + if (cb) { - purple_conv_chat_cb_set_attribute(chat, cb, "userhost", userhost); + purple_conv_chat_cb_set_attribute(chat, cb, "userhost", userhost); } - + if ((ib = g_hash_table_lookup(irc->buddies, nick)) != NULL) { ib->new_online_status = TRUE; irc_buddy_status(nick, ib, irc); diff --git a/libpurple/protocols/jabber/adhoccommands.c b/libpurple/protocols/jabber/adhoccommands.c index 214f5dfdef..373f003265 100644 --- a/libpurple/protocols/jabber/adhoccommands.c +++ b/libpurple/protocols/jabber/adhoccommands.c @@ -74,7 +74,7 @@ jabber_adhoc_got_buddy_list(JabberStream *js, const char *from, xmlnode *query) JabberAdHocCommands *cmd; if(item->type != XMLNODE_TYPE_TAG) continue; - if(strcmp(item->name, "item")) + if(!purple_strequal(item->name, "item")) continue; cmd = g_new0(JabberAdHocCommands, 1); @@ -169,7 +169,7 @@ jabber_adhoc_parse(JabberStream *js, const char *from, if(!status) return; - if(!strcmp(status,"completed")) { + if(purple_strequal(status,"completed")) { /* display result */ xmlnode *note = xmlnode_get_child(command,"note"); @@ -183,7 +183,7 @@ jabber_adhoc_parse(JabberStream *js, const char *from, jabber_x_data_request(js, xdata, (jabber_x_data_cb)do_adhoc_ignoreme, NULL); return; } - if(!strcmp(status,"executing")) { + if(purple_strequal(status,"executing")) { /* this command needs more steps */ xmlnode *actions, *action; int actionindex = 0; @@ -207,7 +207,7 @@ jabber_adhoc_parse(JabberStream *js, const char *from, newaction->name = g_strdup(_(action->name)); newaction->handle = g_strdup(action->name); actionslist = g_list_append(actionslist, newaction); - if(defaultactionhandle && !strcmp(defaultactionhandle, action->name)) + if(defaultactionhandle && purple_strequal(defaultactionhandle, action->name)) actionindex = index; } } @@ -257,7 +257,7 @@ jabber_adhoc_got_server_list(JabberStream *js, const char *from, xmlnode *query) JabberAdHocCommands *cmd; if(item->type != XMLNODE_TYPE_TAG) continue; - if(strcmp(item->name, "item")) + if(!purple_strequal(item->name, "item")) continue; cmd = g_new0(JabberAdHocCommands, 1); cmd->jid = g_strdup(xmlnode_get_attrib(item,"jid")); diff --git a/libpurple/protocols/jabber/auth.c b/libpurple/protocols/jabber/auth.c index dfabe4fb0d..e5ffb6c33d 100644 --- a/libpurple/protocols/jabber/auth.c +++ b/libpurple/protocols/jabber/auth.c @@ -167,7 +167,7 @@ jabber_auth_start(JabberStream *js, xmlnode *packet) JabberSaslMech *possible = l->data; /* Is this the Cyrus SASL mechanism? */ - if (g_str_equal(possible->name, "*")) { + if (purple_strequal(possible->name, "*")) { js->auth_mech = possible; break; } @@ -224,7 +224,7 @@ static void auth_old_result_cb(JabberStream *js, const char *from, /* FIXME: Why is this not in jabber_parse_error? */ if((error = xmlnode_get_child(packet, "error")) && (err_code = xmlnode_get_attrib(error, "code")) && - g_str_equal(err_code, "401")) { + purple_strequal(err_code, "401")) { reason = PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED; /* Clear the pasword if it isn't being saved */ if (!purple_account_get_remember_password(account)) @@ -343,7 +343,7 @@ void jabber_auth_start_old(JabberStream *js) * is requiring SSL/TLS, we need to enforce it. */ if (!jabber_stream_is_ssl(js) && - g_str_equal("require_tls", + purple_strequal("require_tls", purple_account_get_string(account, "connection_security", JABBER_DEFAULT_REQUIRE_TLS))) { purple_connection_error_reason(js->gc, PURPLE_CONNECTION_ERROR_ENCRYPTION_ERROR, diff --git a/libpurple/protocols/jabber/auth_cyrus.c b/libpurple/protocols/jabber/auth_cyrus.c index 0c4278c656..7f76160a12 100644 --- a/libpurple/protocols/jabber/auth_cyrus.c +++ b/libpurple/protocols/jabber/auth_cyrus.c @@ -274,7 +274,7 @@ jabber_auth_start_cyrus(JabberStream *js, xmlnode **reply, char **error) js->auth_fail_count++; if (js->auth_fail_count == 1 && - (js->sasl_mechs->str && g_str_equal(js->sasl_mechs->str, "GSSAPI"))) { + purple_strequal(js->sasl_mechs->str, "GSSAPI")) { /* If we tried GSSAPI first, it failed, and it was the only method we had to try, try jabber:iq:auth * for compatibility with iChat 10.5 Server and other jabberd based servers. * @@ -424,7 +424,7 @@ jabber_cyrus_start(JabberStream *js, xmlnode *mechanisms, * mechanisms"... Easiest just to blacklist it (for now). */ if (!mech_name || !*mech_name || - g_str_equal(mech_name, "EXTERNAL")) { + purple_strequal(mech_name, "EXTERNAL")) { g_free(mech_name); continue; } @@ -569,7 +569,7 @@ jabber_cyrus_handle_failure(JabberStream *js, xmlnode *packet, return jabber_auth_start_cyrus(js, reply, error); } else if ((js->auth_fail_count == 1) && - (js->current_mech && g_str_equal(js->current_mech, "GSSAPI"))) { + purple_strequal(js->current_mech, "GSSAPI")) { /* If we tried GSSAPI first, it failed, and it was the only method we had to try, try jabber:iq:auth * for compatibility with iChat 10.5 Server and other jabberd based servers. * diff --git a/libpurple/protocols/jabber/bosh.c b/libpurple/protocols/jabber/bosh.c index 0d8c53c878..af178c64bc 100644 --- a/libpurple/protocols/jabber/bosh.c +++ b/libpurple/protocols/jabber/bosh.c @@ -432,7 +432,7 @@ static gboolean jabber_bosh_connection_error_check(PurpleBOSHConnection *conn, x type = xmlnode_get_attrib(node, "type"); - if (type != NULL && !strcmp(type, "terminate")) { + if (purple_strequal(type, "terminate")) { conn->state = BOSH_CONN_OFFLINE; purple_connection_error_reason(conn->js->gc, PURPLE_CONNECTION_ERROR_OTHER_ERROR, @@ -505,10 +505,10 @@ static void jabber_bosh_connection_received(PurpleBOSHConnection *conn, xmlnode * the right xmlns on these packets. See #11315. */ if ((xmlns == NULL /* shouldn't happen, but is equally wrong */ || - g_str_equal(xmlns, NS_BOSH)) && - (g_str_equal(child->name, "iq") || - g_str_equal(child->name, "message") || - g_str_equal(child->name, "presence"))) { + purple_strequal(xmlns, NS_BOSH)) && + (purple_strequal(child->name, "iq") || + purple_strequal(child->name, "message") || + purple_strequal(child->name, "presence"))) { xmlnode_set_namespace(child, NS_XMPP_CLIENT); } jabber_process_packet(js, &child); diff --git a/libpurple/protocols/jabber/buddy.c b/libpurple/protocols/jabber/buddy.c index cfe7f3e06d..6a21f02385 100644 --- a/libpurple/protocols/jabber/buddy.c +++ b/libpurple/protocols/jabber/buddy.c @@ -218,7 +218,7 @@ JabberBuddyResource *jabber_buddy_find_resource(JabberBuddy *jb, for (l = jb->resources; l; l = l->next) { JabberBuddyResource *jbr = l->data; - if (jbr->name && g_str_equal(resource, jbr->name)) + if (purple_strequal(resource, jbr->name)) return jbr; } @@ -407,7 +407,7 @@ static xmlnode *insert_tag_to_parent_tag(xmlnode *start, const char *parent_tag, const struct vcard_template *vc_tp = vcard_template_data; while(vc_tp->label != NULL) { - if(strcmp(vc_tp->tag, new_tag) == 0) { + if(purple_strequal(vc_tp->tag, new_tag)) { parent_tag = vc_tp->ptag; break; } @@ -653,7 +653,7 @@ void jabber_setup_set_info(PurplePluginAction *action) cdata = xmlnode_get_data(data_node); } - if(strcmp(vc_tp->tag, "DESC") == 0) { + if(purple_strequal(vc_tp->tag, "DESC")) { field = purple_request_field_string_new(vc_tp->tag, _(vc_tp->label), cdata, TRUE); @@ -875,7 +875,7 @@ static void jabber_buddy_info_remove_id(JabberBuddyInfo *jbi, const char *id) while(l) { comp_id = l->data; - if(!strcmp(id, comp_id)) { + if(purple_strequal(id, comp_id)) { jbi->ids = g_slist_remove(jbi->ids, comp_id); g_free(comp_id); return; @@ -1017,12 +1017,12 @@ static void jabber_vcard_parse(JabberStream *js, const char *from, continue; text = xmlnode_get_data(child); - if(text && !strcmp(child->name, "FN")) { + if(text && purple_strequal(child->name, "FN")) { if (!serverside_alias) serverside_alias = g_strdup(text); purple_notify_user_info_add_pair_plaintext(user_info, _("Full Name"), text); - } else if(!strcmp(child->name, "N")) { + } else if(purple_strequal(child->name, "N")) { for(child2 = child->child; child2; child2 = child2->next) { char *text2; @@ -1031,16 +1031,16 @@ static void jabber_vcard_parse(JabberStream *js, const char *from, continue; text2 = xmlnode_get_data(child2); - if(text2 && !strcmp(child2->name, "FAMILY")) { + if(text2 && purple_strequal(child2->name, "FAMILY")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Family Name"), text2); - } else if(text2 && !strcmp(child2->name, "GIVEN")) { + } else if(text2 && purple_strequal(child2->name, "GIVEN")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Given Name"), text2); - } else if(text2 && !strcmp(child2->name, "MIDDLE")) { + } else if(text2 && purple_strequal(child2->name, "MIDDLE")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Middle Name"), text2); } g_free(text2); } - } else if(text && !strcmp(child->name, "NICKNAME")) { + } else if(text && purple_strequal(child->name, "NICKNAME")) { /* Prefer the Nickcname to the Full Name as the serverside alias if it's not just part of the jid. * Ignore it if it's part of the jid. */ if (strstr(bare_jid, text) == NULL) { @@ -1049,9 +1049,9 @@ static void jabber_vcard_parse(JabberStream *js, const char *from, purple_notify_user_info_add_pair_plaintext(user_info, _("Nickname"), text); } - } else if(text && !strcmp(child->name, "BDAY")) { + } else if(text && purple_strequal(child->name, "BDAY")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Birthday"), text); - } else if(!strcmp(child->name, "ADR")) { + } else if(purple_strequal(child->name, "ADR")) { gboolean address_line_added = FALSE; for(child2 = child->child; child2; child2 = child2->next) @@ -1073,25 +1073,25 @@ static void jabber_vcard_parse(JabberStream *js, const char *from, address_line_added = TRUE; } - if(!strcmp(child2->name, "POBOX")) { + if(purple_strequal(child2->name, "POBOX")) { purple_notify_user_info_add_pair_plaintext(user_info, _("P.O. Box"), text2); - } else if (g_str_equal(child2->name, "EXTADD") || g_str_equal(child2->name, "EXTADR")) { + } else if (purple_strequal(child2->name, "EXTADD") || purple_strequal(child2->name, "EXTADR")) { /* * EXTADD is correct, EXTADR is generated by other * clients. The next time someone reads this, remove * EXTADR. */ purple_notify_user_info_add_pair_plaintext(user_info, _("Extended Address"), text2); - } else if(!strcmp(child2->name, "STREET")) { + } else if(purple_strequal(child2->name, "STREET")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Street Address"), text2); - } else if(!strcmp(child2->name, "LOCALITY")) { + } else if(purple_strequal(child2->name, "LOCALITY")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Locality"), text2); - } else if(!strcmp(child2->name, "REGION")) { + } else if(purple_strequal(child2->name, "REGION")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Region"), text2); - } else if(!strcmp(child2->name, "PCODE")) { + } else if(purple_strequal(child2->name, "PCODE")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Postal Code"), text2); - } else if(!strcmp(child2->name, "CTRY") - || !strcmp(child2->name, "COUNTRY")) { + } else if(purple_strequal(child2->name, "CTRY") + || purple_strequal(child2->name, "COUNTRY")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Country"), text2); } g_free(text2); @@ -1100,7 +1100,7 @@ static void jabber_vcard_parse(JabberStream *js, const char *from, if (address_line_added) purple_notify_user_info_add_section_break(user_info); - } else if(!strcmp(child->name, "TEL")) { + } else if(purple_strequal(child->name, "TEL")) { char *number; if((child2 = xmlnode_get_child(child, "NUMBER"))) { /* show what kind of number it is */ @@ -1115,7 +1115,7 @@ static void jabber_vcard_parse(JabberStream *js, const char *from, purple_notify_user_info_add_pair_plaintext(user_info, _("Telephone"), number); g_free(number); } - } else if(!strcmp(child->name, "EMAIL")) { + } else if(purple_strequal(child->name, "EMAIL")) { char *userid, *escaped; if((child2 = xmlnode_get_child(child, "USERID"))) { /* show what kind of email it is */ @@ -1143,7 +1143,7 @@ static void jabber_vcard_parse(JabberStream *js, const char *from, g_free(escaped); g_free(userid); } - } else if(!strcmp(child->name, "ORG")) { + } else if(purple_strequal(child->name, "ORG")) { for(child2 = child->child; child2; child2 = child2->next) { char *text2; @@ -1152,21 +1152,21 @@ static void jabber_vcard_parse(JabberStream *js, const char *from, continue; text2 = xmlnode_get_data(child2); - if(text2 && !strcmp(child2->name, "ORGNAME")) { + if(text2 && purple_strequal(child2->name, "ORGNAME")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Organization Name"), text2); - } else if(text2 && !strcmp(child2->name, "ORGUNIT")) { + } else if(text2 && purple_strequal(child2->name, "ORGUNIT")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Organization Unit"), text2); } g_free(text2); } - } else if(text && !strcmp(child->name, "TITLE")) { + } else if(text && purple_strequal(child->name, "TITLE")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Job Title"), text); - } else if(text && !strcmp(child->name, "ROLE")) { + } else if(text && purple_strequal(child->name, "ROLE")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Role"), text); - } else if(text && !strcmp(child->name, "DESC")) { + } else if(text && purple_strequal(child->name, "DESC")) { purple_notify_user_info_add_pair_plaintext(user_info, _("Description"), text); - } else if(!strcmp(child->name, "PHOTO") || - !strcmp(child->name, "LOGO")) { + } else if(purple_strequal(child->name, "PHOTO") || + purple_strequal(child->name, "LOGO")) { char *bintext = NULL; xmlnode *binval; @@ -1174,7 +1174,7 @@ static void jabber_vcard_parse(JabberStream *js, const char *from, (bintext = xmlnode_get_data(binval))) { gsize size; guchar *data; - gboolean photo = (strcmp(child->name, "PHOTO") == 0); + gboolean photo = purple_strequal(child->name, "PHOTO"); data = purple_base64_decode(bintext, &size); if (data) { @@ -1481,12 +1481,12 @@ static gboolean _client_is_blacklisted(JabberBuddyResource *jbr, const char *ns) if(!jbr->client.name) return FALSE; - if(!strcmp(ns, NS_LAST_ACTIVITY)) { - if(!strcmp(jbr->client.name, "Trillian")) { + if(purple_strequal(ns, NS_LAST_ACTIVITY)) { + if(purple_strequal(jbr->client.name, "Trillian")) { /* verified by nwalp 2007/05/09 */ - if(!strcmp(jbr->client.version, "3.1.0.121") || + if(purple_strequal(jbr->client.version, "3.1.0.121") || /* verified by nwalp 2007/09/19 */ - !strcmp(jbr->client.version, "3.1.7.0")) { + purple_strequal(jbr->client.version, "3.1.7.0")) { return TRUE; } } @@ -1974,7 +1974,7 @@ static void user_search_result_cb(JabberStream *js, const char *from, field = xmlnode_get_next_twin(field)) { if ((var = xmlnode_get_attrib(field, "var")) && - !strcmp(var, l->data) && + purple_strequal(var, l->data) && (valuenode = xmlnode_get_child(field, "value"))) { char *value = xmlnode_get_data(valuenode); @@ -2045,7 +2045,7 @@ static void user_search_x_data_cb(JabberStream *js, xmlnode *result, gpointer da * just going to get an error if we send * a cancel, so skip it */ type = xmlnode_get_attrib(result, "type"); - if(type && !strcmp(type, "cancel")) { + if(purple_strequal(type, "cancel")) { g_free(dir_server); return; } @@ -2089,7 +2089,7 @@ static void user_search_cb(struct user_search_info *usi, PurpleRequestFields *fi const char *id = purple_request_field_get_id(field); const char *value = purple_request_field_string_get_value(field); - if(value && (!strcmp(id, "first") || !strcmp(id, "last") || !strcmp(id, "nick") || !strcmp(id, "email"))) { + if(value && (purple_strequal(id, "first") || purple_strequal(id, "last") || purple_strequal(id, "nick") || purple_strequal(id, "email"))) { xmlnode *y = xmlnode_new_child(query, id); xmlnode_insert_data(y, value, -1); } @@ -2232,7 +2232,7 @@ void jabber_user_search(JabberStream *js, const char *directory) /* If the value provided isn't the disco#info default, persist it. Otherwise, make sure we aren't persisting an old value */ if(js->user_directories && js->user_directories->data && - !strcmp(directory, js->user_directories->data)) { + purple_strequal(directory, js->user_directories->data)) { purple_account_set_string(js->gc->account, "user_directory", ""); } else { @@ -2324,7 +2324,7 @@ jabber_resource_get_identity_category_type(const JabberBuddyResource *jbr, const JabberIdentity *identity = (JabberIdentity *) iter->data; - if (strcmp(identity->category, category) == 0) { + if (purple_strequal(identity->category, category)) { return identity->type; } } diff --git a/libpurple/protocols/jabber/caps.c b/libpurple/protocols/jabber/caps.c index ead8b1a002..88432c167b 100644 --- a/libpurple/protocols/jabber/caps.c +++ b/libpurple/protocols/jabber/caps.c @@ -93,8 +93,8 @@ static gboolean jabber_caps_compare(gconstpointer v1, gconstpointer v2) { const JabberCapsTuple *name1 = v1; const JabberCapsTuple *name2 = v2; - return g_str_equal(name1->node, name2->node) && - g_str_equal(name1->ver, name2->ver) && + return purple_strequal(name1->node, name2->node) && + purple_strequal(name1->ver, name2->ver) && purple_strequal(name1->hash, name2->hash); } @@ -233,7 +233,7 @@ jabber_caps_load(void) if(!capsdata) return; - if (!g_str_equal(capsdata->name, "capabilities")) { + if (!purple_strequal(capsdata->name, "capabilities")) { xmlnode_free(capsdata); return; } @@ -241,7 +241,7 @@ jabber_caps_load(void) for (client = capsdata->child; client; client = client->next) { if (client->type != XMLNODE_TYPE_TAG) continue; - if (g_str_equal(client->name, "client")) { + if (purple_strequal(client->name, "client")) { JabberCapsClientInfo *value = g_new0(JabberCapsClientInfo, 1); JabberCapsTuple *key = (JabberCapsTuple*)&value->tuple; xmlnode *child; @@ -257,12 +257,12 @@ jabber_caps_load(void) for (child = client->child; child; child = child->next) { if (child->type != XMLNODE_TYPE_TAG) continue; - if (g_str_equal(child->name, "feature")) { + if (purple_strequal(child->name, "feature")) { const char *var = xmlnode_get_attrib(child, "var"); if(!var) continue; value->features = g_list_append(value->features,g_strdup(var)); - } else if (g_str_equal(child->name, "identity")) { + } else if (purple_strequal(child->name, "identity")) { const char *category = xmlnode_get_attrib(child, "category"); const char *type = xmlnode_get_attrib(child, "type"); const char *name = xmlnode_get_attrib(child, "name"); @@ -279,13 +279,13 @@ jabber_caps_load(void) id->lang = g_strdup(lang); value->identities = g_list_append(value->identities,id); - } else if (g_str_equal(child->name, "x")) { + } else if (purple_strequal(child->name, "x")) { /* TODO: See #7814 -- this might cause problems if anyone * ever actually specifies forms. In fact, for this to * work properly, that bug needs to be fixed in * xmlnode_from_str, not the output version... */ value->forms = g_list_append(value->forms, xmlnode_copy(child)); - } else if (g_str_equal(child->name, "ext")) { + } else if (purple_strequal(child->name, "ext")) { if (key->hash != NULL) purple_debug_warning("jabber", "Ignoring exts when reading new-style caps\n"); else { @@ -300,7 +300,7 @@ jabber_caps_load(void) for (node = child->child; node; node = node->next) { if (node->type != XMLNODE_TYPE_TAG) continue; - if (g_str_equal(node->name, "feature")) { + if (purple_strequal(node->name, "feature")) { const char *var = xmlnode_get_attrib(node, "var"); if (!var) continue; @@ -357,7 +357,7 @@ gboolean jabber_caps_exts_known(const JabberCapsClientInfo *info, for (i = 0; exts[i]; ++i) { /* Hack since we advertise the ext along with v1.5 caps but don't * store any exts */ - if (g_str_equal(exts[i], "voice-v1") && !info->exts) + if (purple_strequal(exts[i], "voice-v1") && !info->exts) continue; if (!info->exts || !g_hash_table_lookup(info->exts->exts, exts[i])) @@ -460,13 +460,13 @@ jabber_caps_client_iqcb(JabberStream *js, const char *from, JabberIqType type, * size in jabber_caps_calculate_hash is large enough. The cipher API * doesn't seem to offer a "Get the hash size" function(?). */ - if (g_str_equal(userdata->hash, "sha-1")) { + if (purple_strequal(userdata->hash, "sha-1")) { hash = jabber_caps_calculate_hash(info, "sha1"); - } else if (g_str_equal(userdata->hash, "md5")) { + } else if (purple_strequal(userdata->hash, "md5")) { hash = jabber_caps_calculate_hash(info, "md5"); } - if (!hash || !g_str_equal(hash, userdata->ver)) { + if (!hash || !purple_strequal(hash, userdata->ver)) { purple_debug_warning("jabber", "Could not validate caps info from " "%s. Expected %s, got %s\n", xmlnode_get_attrib(packet, "from"), @@ -728,7 +728,7 @@ JabberCapsClientInfo *jabber_caps_parse_client_info(xmlnode *query) xmlnode *child; JabberCapsClientInfo *info; - if (!query || !g_str_equal(query->name, "query") || + if (!query || !purple_strequal(query->name, "query") || !purple_strequal(query->xmlns, NS_DISCO_INFO)) return NULL; @@ -737,7 +737,7 @@ JabberCapsClientInfo *jabber_caps_parse_client_info(xmlnode *query) for(child = query->child; child; child = child->next) { if (child->type != XMLNODE_TYPE_TAG) continue; - if (g_str_equal(child->name, "identity")) { + if (purple_strequal(child->name, "identity")) { /* parse identity */ const char *category = xmlnode_get_attrib(child, "category"); const char *type = xmlnode_get_attrib(child, "type"); @@ -755,12 +755,12 @@ JabberCapsClientInfo *jabber_caps_parse_client_info(xmlnode *query) id->lang = g_strdup(lang); info->identities = g_list_append(info->identities, id); - } else if (g_str_equal(child->name, "feature")) { + } else if (purple_strequal(child->name, "feature")) { /* parse feature */ const char *var = xmlnode_get_attrib(child, "var"); if (var) info->features = g_list_prepend(info->features, g_strdup(var)); - } else if (g_str_equal(child->name, "x")) { + } else if (purple_strequal(child->name, "x")) { if (purple_strequal(child->xmlns, "jabber:x:data")) { /* x-data form */ xmlnode *dataform = xmlnode_copy(child); @@ -878,7 +878,7 @@ gchar *jabber_caps_calculate_hash(JabberCapsClientInfo *info, const char *hash) GList *value; JabberDataFormField *field = (JabberDataFormField*)fields->data; - if (!g_str_equal(field->var, "FORM_TYPE")) { + if (!purple_strequal(field->var, "FORM_TYPE")) { /* Append the "var" attribute */ append_escaped_string(context, field->var); /* Append <value/> elements' cdata */ @@ -956,7 +956,7 @@ void jabber_caps_broadcast_change() for (node = accounts; node; node = node->next) { PurpleAccount *account = node->data; const char *prpl_id = purple_account_get_protocol_id(account); - if (g_str_equal("prpl-jabber", prpl_id) && purple_account_is_connected(account)) { + if (purple_strequal("prpl-jabber", prpl_id) && purple_account_is_connected(account)) { PurpleConnection *gc = purple_account_get_connection(account); jabber_presence_send(gc->proto_data, TRUE); } diff --git a/libpurple/protocols/jabber/chat.c b/libpurple/protocols/jabber/chat.c index b7cb226181..fc532dcc73 100644 --- a/libpurple/protocols/jabber/chat.c +++ b/libpurple/protocols/jabber/chat.c @@ -526,7 +526,7 @@ static void jabber_chat_room_configure_cb(JabberStream *js, const char *from, if(!(xmlns = xmlnode_get_namespace(x))) continue; - if(!strcmp(xmlns, "jabber:x:data")) { + if(purple_strequal(xmlns, "jabber:x:data")) { chat->config_dialog_type = PURPLE_REQUEST_FIELDS; chat->config_dialog_handle = jabber_x_data_request(js, x, jabber_chat_room_configure_x_data_cb, chat); return; @@ -671,7 +671,7 @@ static void jabber_chat_register_cb(JabberStream *js, const char *from, if(!(xmlns = xmlnode_get_namespace(x))) continue; - if(!strcmp(xmlns, "jabber:x:data")) { + if(purple_strequal(xmlns, "jabber:x:data")) { jabber_x_data_request(js, x, jabber_chat_register_x_data_cb, chat); return; } @@ -1226,7 +1226,7 @@ static void jabber_chat_disco_traffic_cb(JabberStream *js, const char *from, for(x = xmlnode_get_child(query, "feature"); x; x = xmlnode_get_next_twin(x)) { const char *var = xmlnode_get_attrib(x, "var"); - if(var && !strcmp(var, NS_XHTML_IM)) { + if(purple_strequal(var, NS_XHTML_IM)) { chat->xhtml = TRUE; } } diff --git a/libpurple/protocols/jabber/data.c b/libpurple/protocols/jabber/data.c index 9a47633825..f213733c69 100644 --- a/libpurple/protocols/jabber/data.c +++ b/libpurple/protocols/jabber/data.c @@ -87,7 +87,7 @@ jabber_data_create_from_xml(xmlnode *tag) g_return_val_if_fail(tag != NULL, NULL); /* check if this is a "data" tag */ - if (strcmp(tag->name, "data") != 0) { + if (!purple_strequal(tag->name, "data")) { purple_debug_error("jabber", "Invalid data element\n"); return NULL; } diff --git a/libpurple/protocols/jabber/disco.c b/libpurple/protocols/jabber/disco.c index e66a0cb05d..a5841d3a11 100644 --- a/libpurple/protocols/jabber/disco.c +++ b/libpurple/protocols/jabber/disco.c @@ -65,14 +65,14 @@ jabber_disco_bytestream_server_cb(JabberStream *js, const char *from, xmlnode *query = xmlnode_get_child_with_namespace(packet, "query", NS_BYTESTREAMS); - if (from && !strcmp(from, sh->jid) && query != NULL) { + if (from && purple_strequal(from, sh->jid) && query != NULL) { xmlnode *sh_node = xmlnode_get_child(query, "streamhost"); if (sh_node) { const char *jid = xmlnode_get_attrib(sh_node, "jid"); const char *port = xmlnode_get_attrib(sh_node, "port"); - if (jid == NULL || strcmp(jid, from) != 0) + if (jid == NULL || !purple_strequal(jid, from)) purple_debug_error("jabber", "Invalid jid(%s) for bytestream.\n", jid ? jid : "(null)"); @@ -123,7 +123,7 @@ void jabber_disco_info_parse(JabberStream *js, const char *from, if(node) xmlnode_set_attrib(query, "node", node); - if(!node || g_str_equal(node, node_uri)) { + if(!node || purple_strequal(node, node_uri)) { GList *features, *identities; for(identities = jabber_identities; identities; identities = identities->next) { JabberIdentity *ident = (JabberIdentity*)identities->data; @@ -143,7 +143,7 @@ void jabber_disco_info_parse(JabberStream *js, const char *from, } } #ifdef USE_VV - } else if (g_str_equal(node, CAPS0115_NODE "#" "voice-v1")) { + } else if (purple_strequal(node, CAPS0115_NODE "#" "voice-v1")) { /* * HUGE HACK! We advertise this ext (see jabber_presence_create_js * where we add <c/> to the <presence/>) for the Google Talk @@ -155,7 +155,7 @@ void jabber_disco_info_parse(JabberStream *js, const char *from, */ xmlnode *feature = xmlnode_new_child(query, "feature"); xmlnode_set_attrib(feature, "var", NS_GOOGLE_VOICE); - } else if (g_str_equal(node, CAPS0115_NODE "#" "video-v1")) { + } else if (purple_strequal(node, CAPS0115_NODE "#" "video-v1")) { /* * HUGE HACK! We advertise this ext (see jabber_presence_create_js * where we add <c/> to the <presence/>) for the Google Talk @@ -167,7 +167,7 @@ void jabber_disco_info_parse(JabberStream *js, const char *from, */ xmlnode *feature = xmlnode_new_child(query, "feature"); xmlnode_set_attrib(feature, "var", NS_GOOGLE_VIDEO); - } else if (g_str_equal(node, CAPS0115_NODE "#" "camera-v1")) { + } else if (purple_strequal(node, CAPS0115_NODE "#" "camera-v1")) { /* * HUGE HACK! We advertise this ext (see jabber_presence_create_js * where we add <c/> to the <presence/>) for the Google Talk @@ -245,20 +245,20 @@ static void jabber_disco_info_cb(JabberStream *js, const char *from, if(child->type != XMLNODE_TYPE_TAG) continue; - if(!strcmp(child->name, "identity")) { + if(purple_strequal(child->name, "identity")) { const char *category = xmlnode_get_attrib(child, "category"); const char *type = xmlnode_get_attrib(child, "type"); if(!category || !type) continue; - if(!strcmp(category, "conference") && !strcmp(type, "text")) { + if(purple_strequal(category, "conference") && purple_strequal(type, "text")) { /* we found a groupchat or MUC server, add it to the list */ /* XXX: actually check for protocol/muc or gc-1.0 support */ js->chat_servers = g_list_prepend(js->chat_servers, g_strdup(from)); - } else if(!strcmp(category, "directory") && !strcmp(type, "user")) { + } else if(purple_strequal(category, "directory") && purple_strequal(type, "user")) { /* we found a JUD */ js->user_directories = g_list_prepend(js->user_directories, g_strdup(from)); - } else if(!strcmp(category, "proxy") && !strcmp(type, "bytestreams")) { + } else if(purple_strequal(category, "proxy") && purple_strequal(type, "bytestreams")) { /* This is a bytestream proxy */ JabberIq *iq; JabberBytestreamsStreamhost *sh; @@ -276,29 +276,29 @@ static void jabber_disco_info_cb(JabberStream *js, const char *from, jabber_iq_send(iq); } - } else if(!strcmp(child->name, "feature")) { + } else if(purple_strequal(child->name, "feature")) { const char *var = xmlnode_get_attrib(child, "var"); if(!var) continue; - if(!strcmp(var, "http://jabber.org/protocol/si")) + if(purple_strequal(var, "http://jabber.org/protocol/si")) capabilities |= JABBER_CAP_SI; - else if(!strcmp(var, "http://jabber.org/protocol/si/profile/file-transfer")) + else if(purple_strequal(var, "http://jabber.org/protocol/si/profile/file-transfer")) capabilities |= JABBER_CAP_SI_FILE_XFER; - else if(!strcmp(var, NS_BYTESTREAMS)) + else if(purple_strequal(var, NS_BYTESTREAMS)) capabilities |= JABBER_CAP_BYTESTREAMS; - else if(!strcmp(var, "jabber:iq:search")) + else if(purple_strequal(var, "jabber:iq:search")) capabilities |= JABBER_CAP_IQ_SEARCH; - else if(!strcmp(var, "jabber:iq:register")) + else if(purple_strequal(var, "jabber:iq:register")) capabilities |= JABBER_CAP_IQ_REGISTER; - else if(!strcmp(var, NS_PING)) + else if(purple_strequal(var, NS_PING)) capabilities |= JABBER_CAP_PING; - else if(!strcmp(var, NS_DISCO_ITEMS)) + else if(purple_strequal(var, NS_DISCO_ITEMS)) capabilities |= JABBER_CAP_ITEMS; - else if(!strcmp(var, "http://jabber.org/protocol/commands")) { + else if(purple_strequal(var, "http://jabber.org/protocol/commands")) { capabilities |= JABBER_CAP_ADHOC; } - else if(!strcmp(var, NS_IBB)) { + else if(purple_strequal(var, NS_IBB)) { purple_debug_info("jabber", "remote supports IBB\n"); capabilities |= JABBER_CAP_IBB; } @@ -498,7 +498,7 @@ jabber_disco_server_info_result_cb(JabberStream *js, const char *from, { xmlnode *query, *child; - if (!from || strcmp(from, js->user->domain)) { + if (!from || !purple_strequal(from, js->user->domain)) { jabber_disco_finish_server_info_result_cb(js); return; } @@ -519,17 +519,18 @@ jabber_disco_server_info_result_cb(JabberStream *js, const char *from, for (child = xmlnode_get_child(query, "identity"); child; child = xmlnode_get_next_twin(child)) { const char *category, *type, *name; + const char *stun_ip; category = xmlnode_get_attrib(child, "category"); type = xmlnode_get_attrib(child, "type"); - if(category && type && !strcmp(category, "pubsub") && !strcmp(type,"pep")) { + if(purple_strequal(category, "pubsub") && purple_strequal(type, "pep")) { PurpleConnection *gc = js->gc; js->pep = TRUE; gc->flags |= PURPLE_CONNECTION_SUPPORT_MOODS | PURPLE_CONNECTION_SUPPORT_MOOD_MESSAGES; } - if (!category || strcmp(category, "server")) + if (!purple_strequal(category, "server")) continue; - if (!type || strcmp(type, "im")) + if (!purple_strequal(type, "im")) continue; name = xmlnode_get_attrib(child, "name"); @@ -538,17 +539,16 @@ jabber_disco_server_info_result_cb(JabberStream *js, const char *from, g_free(js->server_name); js->server_name = g_strdup(name); - if (!strcmp(name, "Google Talk")) { + stun_ip = purple_network_get_stun_ip(); + if (purple_strequal(name, "Google Talk")) { purple_debug_info("jabber", "Google Talk!\n"); js->googletalk = TRUE; /* autodiscover stun and relays */ - if (purple_network_get_stun_ip() == NULL || - purple_strequal(purple_network_get_stun_ip(), "")) { + if (!stun_ip || !*stun_ip) { jabber_google_send_jingle_info(js); } - } else if (purple_network_get_stun_ip() == NULL || - purple_strequal(purple_network_get_stun_ip(), "")) { + } else if (!stun_ip || !*stun_ip) { js->srv_query_data = purple_srv_resolve_account( purple_connection_get_account(js->gc), "stun", "udp", @@ -565,14 +565,14 @@ jabber_disco_server_info_result_cb(JabberStream *js, const char *from, if (!var) continue; - if (!strcmp(NS_GOOGLE_MAIL_NOTIFY, var)) { + if (purple_strequal(NS_GOOGLE_MAIL_NOTIFY, var)) { js->server_caps |= JABBER_CAP_GMAIL_NOTIFY; jabber_gmail_init(js); - } else if (!strcmp(NS_GOOGLE_ROSTER, var)) { + } else if (purple_strequal(NS_GOOGLE_ROSTER, var)) { js->server_caps |= JABBER_CAP_GOOGLE_ROSTER; - } else if (!strcmp("http://jabber.org/protocol/commands", var)) { + } else if (purple_strequal("http://jabber.org/protocol/commands", var)) { js->server_caps |= JABBER_CAP_ADHOC; - } else if (!strcmp(NS_SIMPLE_BLOCKING, var)) { + } else if (purple_strequal(NS_SIMPLE_BLOCKING, var)) { js->server_caps |= JABBER_CAP_BLOCKING; } } @@ -587,7 +587,7 @@ jabber_disco_server_items_result_cb(JabberStream *js, const char *from, { xmlnode *query, *child; - if (!from || strcmp(from, js->user->domain) != 0) + if (!from || !purple_strequal(from, js->user->domain)) return; if (type == JABBER_IQ_ERROR) diff --git a/libpurple/protocols/jabber/google/gmail.c b/libpurple/protocols/jabber/google/gmail.c index 5f86b8efac..78a4928e62 100644 --- a/libpurple/protocols/jabber/google/gmail.c +++ b/libpurple/protocols/jabber/google/gmail.c @@ -95,7 +95,7 @@ jabber_gmail_parse(JabberStream *js, const char *from, sender_node = xmlnode_get_child(sender_node, "sender"); while (sender_node && (!xmlnode_get_attrib(sender_node, "unread") || - !strcmp(xmlnode_get_attrib(sender_node, "unread"),"0"))) + purple_strequal(xmlnode_get_attrib(sender_node, "unread"),"0"))) sender_node = xmlnode_get_next_twin(sender_node); if (!sender_node) { @@ -116,8 +116,7 @@ jabber_gmail_parse(JabberStream *js, const char *from, urls[i] = url; tid = xmlnode_get_attrib(message, "tid"); - if (tid && - (js->gmail_last_tid == NULL || strcmp(tid, js->gmail_last_tid) > 0)) { + if (g_strcmp0(tid, js->gmail_last_tid) > 0) { g_free(js->gmail_last_tid); js->gmail_last_tid = g_strdup(tid); } diff --git a/libpurple/protocols/jabber/google/google_roster.c b/libpurple/protocols/jabber/google/google_roster.c index d0de12cc4a..d011d45cb7 100644 --- a/libpurple/protocols/jabber/google/google_roster.c +++ b/libpurple/protocols/jabber/google/google_roster.c @@ -34,7 +34,7 @@ void jabber_google_roster_outgoing(JabberStream *js, xmlnode *query, xmlnode *it char *jid_norm = (char *)jabber_normalize(account, jid); while (list) { - if (!strcmp(jid_norm, (char*)list->data)) { + if (purple_strequal(jid_norm, (char*)list->data)) { xmlnode_set_attrib(query, "xmlns:gr", NS_GOOGLE_ROSTER); xmlnode_set_attrib(query, "gr:ext", "2"); xmlnode_set_attrib(item, "gr:t", "B"); @@ -56,7 +56,7 @@ gboolean jabber_google_roster_incoming(JabberStream *js, xmlnode *item) const char *subscription = xmlnode_get_attrib(item, "subscription"); const char *ask = xmlnode_get_attrib(item, "ask"); - if ((!subscription || !strcmp(subscription, "none")) && !ask) { + if ((!subscription || purple_strequal(subscription, "none")) && !ask) { /* The Google Talk servers will automatically add people from your Gmail address book * with subscription=none. If we see someone with subscription=none, ignore them. */ diff --git a/libpurple/protocols/jabber/google/google_session.c b/libpurple/protocols/jabber/google/google_session.c index 98a9edaa7b..8130760fea 100644 --- a/libpurple/protocols/jabber/google/google_session.c +++ b/libpurple/protocols/jabber/google/google_session.c @@ -42,7 +42,7 @@ google_session_id_equal(gconstpointer a, gconstpointer b) GoogleSessionId *c = (GoogleSessionId*)a; GoogleSessionId *d = (GoogleSessionId*)b; - return !strcmp(c->id, d->id) && !strcmp(c->initiator, d->initiator); + return purple_strequal(c->id, d->id) && purple_strequal(c->initiator, d->initiator); } static void @@ -91,7 +91,7 @@ google_session_send_candidates(PurpleMedia *media, gchar *session_id, PurpleMediaCandidate *transport; gboolean video = FALSE; - if (!strcmp(session_id, "google-video")) + if (purple_strequal(session_id, "google-video")) video = TRUE; for (iter = candidates; iter; iter = iter->next) { @@ -179,7 +179,7 @@ google_session_ready(GoogleSession *session) JabberIq *iq; xmlnode *sess, *desc, *payload; GList *codecs, *iter; - gboolean is_initiator = !strcmp(session->id.initiator, me); + gboolean is_initiator = purple_strequal(session->id.initiator, me); if (!is_initiator && !purple_media_accepted(media, NULL, NULL)) { @@ -504,7 +504,7 @@ jabber_google_relay_response_session_handle_initiate_cb(GoogleSession *session, const char *id, *encoding_name, *clock_rate; gboolean video; if (codec_element->name && - strcmp(codec_element->name, "payload-type")) + !purple_strequal(codec_element->name, "payload-type")) continue; xmlns = xmlnode_get_namespace(codec_element); @@ -512,7 +512,7 @@ jabber_google_relay_response_session_handle_initiate_cb(GoogleSession *session, id = xmlnode_get_attrib(codec_element, "id"); if (!session_data->video || - (xmlns && !strcmp(xmlns, NS_GOOGLE_SESSION_PHONE))) { + purple_strequal(xmlns, NS_GOOGLE_SESSION_PHONE)) { clock_rate = xmlnode_get_attrib( codec_element, "clockrate"); video = FALSE; @@ -638,11 +638,11 @@ google_session_handle_candidates(JabberStream *js, GoogleSession *session, xmln g_snprintf(n, sizeof(n), "S%d", name++); - if (g_str_equal(type, "local")) + if (purple_strequal(type, "local")) candidate_type = PURPLE_MEDIA_CANDIDATE_TYPE_HOST; - else if (g_str_equal(type, "stun")) + else if (purple_strequal(type, "stun")) candidate_type = PURPLE_MEDIA_CANDIDATE_TYPE_PRFLX; - else if (g_str_equal(type, "relay")) + else if (purple_strequal(type, "relay")) candidate_type = PURPLE_MEDIA_CANDIDATE_TYPE_RELAY; else candidate_type = PURPLE_MEDIA_CANDIDATE_TYPE_HOST; @@ -709,7 +709,7 @@ google_session_handle_accept(JabberStream *js, GoogleSession *session, xmlnode * GList *codecs = NULL, *video_codecs = NULL; JabberIq *result = NULL; const gchar *xmlns = xmlnode_get_namespace(desc_element); - gboolean video = (xmlns && !strcmp(xmlns, NS_GOOGLE_SESSION_VIDEO)); + gboolean video = purple_strequal(xmlns, NS_GOOGLE_SESSION_VIDEO); GoogleAVSessionData *session_data = (GoogleAVSessionData *) session->session_data; @@ -788,15 +788,15 @@ google_session_parse_iq(JabberStream *js, GoogleSession *session, xmlnode *sess, { const char *type = xmlnode_get_attrib(sess, "type"); - if (!strcmp(type, "initiate")) { + if (purple_strequal(type, "initiate")) { google_session_handle_initiate(js, session, sess, iq_id); - } else if (!strcmp(type, "accept")) { + } else if (purple_strequal(type, "accept")) { google_session_handle_accept(js, session, sess, iq_id); - } else if (!strcmp(type, "reject")) { + } else if (purple_strequal(type, "reject")) { google_session_handle_reject(js, session, sess); - } else if (!strcmp(type, "terminate")) { + } else if (purple_strequal(type, "terminate")) { google_session_handle_terminate(js, session, sess); - } else if (!strcmp(type, "candidates")) { + } else if (purple_strequal(type, "candidates")) { google_session_handle_candidates(js, session, sess, iq_id); } } @@ -845,7 +845,7 @@ jabber_google_session_parse(JabberStream *js, const char *from, } /* If the session doesn't exist, this has to be an initiate message */ - if (strcmp(xmlnode_get_attrib(session_node, "type"), "initiate")) + if (!purple_strequal(xmlnode_get_attrib(session_node, "type"), "initiate")) return; desc_node = xmlnode_get_child(session_node, "description"); if (!desc_node) diff --git a/libpurple/protocols/jabber/ibb.c b/libpurple/protocols/jabber/ibb.c index bfece07087..556a3b16b0 100644 --- a/libpurple/protocols/jabber/ibb.c +++ b/libpurple/protocols/jabber/ibb.c @@ -386,9 +386,9 @@ jabber_ibb_parse(JabberStream *js, const char *who, JabberIqType type, const char *id, xmlnode *child) { const char *name = child->name; - gboolean data = g_str_equal(name, "data"); - gboolean close = g_str_equal(name, "close"); - gboolean open = g_str_equal(name, "open"); + gboolean data = purple_strequal(name, "data"); + gboolean close = purple_strequal(name, "close"); + gboolean open = purple_strequal(name, "open"); const gchar *sid = (data || close) ? xmlnode_get_attrib(child, "sid") : NULL; JabberIBBSession *sess = @@ -396,7 +396,7 @@ jabber_ibb_parse(JabberStream *js, const char *who, JabberIqType type, if (sess) { - if (strcmp(who, jabber_ibb_session_get_who(sess)) != 0) { + if (!purple_strequal(who, jabber_ibb_session_get_who(sess))) { /* the iq comes from a different JID than the remote JID of the session, ignore it */ purple_debug_error("jabber", diff --git a/libpurple/protocols/jabber/iq.c b/libpurple/protocols/jabber/iq.c index 0292c32dfd..0c312d37a1 100644 --- a/libpurple/protocols/jabber/iq.c +++ b/libpurple/protocols/jabber/iq.c @@ -374,13 +374,13 @@ void jabber_iq_parse(JabberStream *js, xmlnode *packet) } if (iq_type) { - if (!strcmp(iq_type, "get")) + if (purple_strequal(iq_type, "get")) type = JABBER_IQ_GET; - else if (!strcmp(iq_type, "set")) + else if (purple_strequal(iq_type, "set")) type = JABBER_IQ_SET; - else if (!strcmp(iq_type, "result")) + else if (purple_strequal(iq_type, "result")) type = JABBER_IQ_RESULT; - else if (!strcmp(iq_type, "error")) + else if (purple_strequal(iq_type, "error")) type = JABBER_IQ_ERROR; } diff --git a/libpurple/protocols/jabber/jabber.c b/libpurple/protocols/jabber/jabber.c index 1d37673978..4acd74d560 100644 --- a/libpurple/protocols/jabber/jabber.c +++ b/libpurple/protocols/jabber/jabber.c @@ -228,7 +228,7 @@ jabber_process_starttls(JabberStream *js, xmlnode *packet) */ { const gchar *connection_security = purple_account_get_string(account, "connection_security", JABBER_DEFAULT_REQUIRE_TLS); - if (!g_str_equal(connection_security, "none") && + if (!purple_strequal(connection_security, "none") && purple_ssl_is_supported()) { jabber_send_raw(js, "<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>", -1); @@ -253,7 +253,7 @@ jabber_process_starttls(JabberStream *js, xmlnode *packet) return TRUE; } - if (g_str_equal("require_tls", purple_account_get_string(account, "connection_security", JABBER_DEFAULT_REQUIRE_TLS))) { + if (purple_strequal("require_tls", purple_account_get_string(account, "connection_security", JABBER_DEFAULT_REQUIRE_TLS))) { purple_connection_error_reason(js->gc, PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT, _("You require encryption, but no TLS/SSL support was found.")); @@ -274,7 +274,7 @@ void jabber_stream_features_parse(JabberStream *js, xmlnode *packet) jabber_stream_set_state(js, JABBER_STREAM_INITIALIZING_ENCRYPTION); return; } - } else if (g_str_equal(connection_security, "require_tls") && !jabber_stream_is_ssl(js)) { + } else if (purple_strequal(connection_security, "require_tls") && !jabber_stream_is_ssl(js)) { purple_connection_error_reason(js->gc, PURPLE_CONNECTION_ERROR_ENCRYPTION_ERROR, _("You require encryption, but it is not available on this server.")); @@ -341,33 +341,33 @@ void jabber_process_packet(JabberStream *js, xmlnode **packet) name = (*packet)->name; xmlns = xmlnode_get_namespace(*packet); - if(!strcmp((*packet)->name, "iq")) { + if(purple_strequal((*packet)->name, "iq")) { jabber_iq_parse(js, *packet); - } else if(!strcmp((*packet)->name, "presence")) { + } else if(purple_strequal((*packet)->name, "presence")) { jabber_presence_parse(js, *packet); - } else if(!strcmp((*packet)->name, "message")) { + } else if(purple_strequal((*packet)->name, "message")) { jabber_message_parse(js, *packet); } else if (purple_strequal(xmlns, NS_XMPP_STREAMS)) { - if (g_str_equal(name, "features")) + if (purple_strequal(name, "features")) jabber_stream_features_parse(js, *packet); - else if (g_str_equal(name, "error")) + else if (purple_strequal(name, "error")) jabber_stream_handle_error(js, *packet); } else if (purple_strequal(xmlns, NS_XMPP_SASL)) { if (js->state != JABBER_STREAM_AUTHENTICATING) purple_debug_warning("jabber", "Ignoring spurious SASL stanza %s\n", name); else { - if (g_str_equal(name, "challenge")) + if (purple_strequal(name, "challenge")) jabber_auth_handle_challenge(js, *packet); - else if (g_str_equal(name, "success")) + else if (purple_strequal(name, "success")) jabber_auth_handle_success(js, *packet); - else if (g_str_equal(name, "failure")) + else if (purple_strequal(name, "failure")) jabber_auth_handle_failure(js, *packet); } } else if (purple_strequal(xmlns, NS_XMPP_TLS)) { if (js->state != JABBER_STREAM_INITIALIZING_ENCRYPTION || js->gsc) purple_debug_warning("jabber", "Ignoring spurious %s\n", name); else { - if (g_str_equal(name, "proceed")) + if (purple_strequal(name, "proceed")) tls_init(js); /* TODO: Handle <failure/>, I guess? */ } @@ -474,7 +474,7 @@ void jabber_send_raw(JabberStream *js, const char *data, int len) g_return_if_fail(data != NULL); /* because printing a tab to debug every minute gets old */ - if (data && strcmp(data, "\t") != 0) { + if (data && !purple_strequal(data, "\t")) { const char *username; char *text = NULL, *last_part = NULL, *tag_start = NULL; @@ -602,9 +602,9 @@ void jabber_send_signal_cb(PurpleConnection *pc, xmlnode **packet, return; if (js->bosh) - if (g_str_equal((*packet)->name, "message") || - g_str_equal((*packet)->name, "iq") || - g_str_equal((*packet)->name, "presence")) + if (purple_strequal((*packet)->name, "message") || + purple_strequal((*packet)->name, "iq") || + purple_strequal((*packet)->name, "presence")) xmlnode_set_namespace(*packet, NS_XMPP_CLIENT); txt = xmlnode_to_str(*packet, &len); jabber_send_raw(js, txt, len); @@ -772,7 +772,7 @@ txt_resolved_cb(GList *responses, gpointer data) PurpleTxtResponse *resp = responses->data; gchar **token; token = g_strsplit(purple_txt_response_get_content(resp), "=", 2); - if (!strcmp(token[0], "_xmpp-client-xbosh")) { + if (purple_strequal(token[0], "_xmpp-client-xbosh")) { purple_debug_info("jabber","Found alternative connection method using %s at %s.\n", token[0], token[1]); js->bosh = jabber_bosh_connection_init(js, token[1]); g_strfreev(token); @@ -1050,7 +1050,7 @@ jabber_stream_connect(JabberStream *js) js->certificate_CN = g_strdup(connect_server[0] ? connect_server : js->user->domain); /* if they've got old-ssl mode going, we probably want to ignore SRV lookups */ - if (g_str_equal("old_ssl", purple_account_get_string(account, "connection_security", JABBER_DEFAULT_REQUIRE_TLS))) { + if (purple_strequal("old_ssl", purple_account_get_string(account, "connection_security", JABBER_DEFAULT_REQUIRE_TLS))) { if(purple_ssl_is_supported()) { js->gsc = purple_ssl_connect(account, js->certificate_CN, purple_account_get_int(account, "port", 5223), @@ -1094,7 +1094,7 @@ jabber_login(PurpleAccount *account) return; /* TODO: Remove this at some point. Added 2010-02-14 (v2.6.6) */ - if (g_str_equal("proxy.jabber.org", purple_account_get_string(account, "ft_proxies", ""))) + if (purple_strequal("proxy.jabber.org", purple_account_get_string(account, "ft_proxies", ""))) purple_account_set_string(account, "ft_proxies", JABBER_DEFAULT_FT_PROXIES); /* @@ -1228,7 +1228,7 @@ jabber_register_cb(JabberRegisterCBData *cbdata, PurpleRequestFields *fields) flds; flds = flds->next) { PurpleRequestField *field = flds->data; const char *id = purple_request_field_get_id(field); - if(!strcmp(id,"unregister")) { + if(purple_strequal(id,"unregister")) { gboolean value = purple_request_field_bool_get_value(field); if(value) { /* unregister from service. this doesn't include any of the fields, so remove them from the stanza by recreating it @@ -1253,7 +1253,7 @@ jabber_register_cb(JabberRegisterCBData *cbdata, PurpleRequestFields *fields) const char *value = purple_request_field_string_get_value(field); int i; for (i = 0; ids[i]; i++) { - if (!strcmp(id, ids[i])) + if (purple_strequal(id, ids[i])) break; } @@ -1261,11 +1261,11 @@ jabber_register_cb(JabberRegisterCBData *cbdata, PurpleRequestFields *fields) continue; y = xmlnode_new_child(query, ids[i]); xmlnode_insert_data(y, value, -1); - if(cbdata->js->registration && !strcmp(id, "username")) { + if(cbdata->js->registration && purple_strequal(id, "username")) { g_free(cbdata->js->user->node); cbdata->js->user->node = g_strdup(value); } - if(cbdata->js->registration && !strcmp(id, "password")) + if(cbdata->js->registration && purple_strequal(id, "password")) purple_account_set_password(cbdata->js->gc->account, value); } } @@ -1817,7 +1817,7 @@ void jabber_blocklist_parse_push(JabberStream *js, const char *from, } account = purple_connection_get_account(js->gc); - is_block = g_str_equal(child->name, "block"); + is_block = purple_strequal(child->name, "block"); item = xmlnode_get_child(child, "item"); if (!is_block && item == NULL) { @@ -1993,7 +1993,7 @@ void jabber_remove_feature(const char *namespace) { GList *feature; for(feature = jabber_features; feature; feature = feature->next) { JabberFeature *feat = (JabberFeature*)feature->data; - if(!strcmp(feat->namespace, namespace)) { + if(purple_strequal(feat->namespace, namespace)) { g_free(feat->namespace); g_free(feature->data); jabber_features = g_list_delete_link(jabber_features, feature); @@ -2023,23 +2023,17 @@ jabber_identity_compare(gconstpointer a, gconstpointer b) ac = a; bc = b; - if ((cat_cmp = strcmp(ac->category, bc->category)) == 0) { - if ((typ_cmp = strcmp(ac->type, bc->type)) == 0) { - if (!ac->lang && !bc->lang) { - return 0; - } else if (ac->lang && !bc->lang) { - return 1; - } else if (!ac->lang && bc->lang) { - return -1; - } else { - return strcmp(ac->lang, bc->lang); - } - } else { - return typ_cmp; - } - } else { + cat_cmp = g_strcmp0(ac->category, bc->category); + if (cat_cmp != 0) { return cat_cmp; } + + typ_cmp = g_strcmp0(ac->type, bc->type); + if (typ_cmp != 0) { + return typ_cmp; + } + + return g_strcmp0(ac->lang, bc->lang); } void jabber_add_identity(const gchar *category, const gchar *type, @@ -2055,8 +2049,8 @@ void jabber_add_identity(const gchar *category, const gchar *type, /* Check if this identity is already there... */ for (identity = jabber_identities; identity; identity = identity->next) { JabberIdentity *id = identity->data; - if (g_str_equal(id->category, category) && - g_str_equal(id->type, type) && + if (purple_strequal(id->category, category) && + purple_strequal(id->type, type) && purple_strequal(id->lang, lang)) return; } @@ -2152,13 +2146,13 @@ const char* jabber_list_emblem(PurpleBuddy *b) jabber_resource_get_identity_category_type(jbr, "client"); if (client_type) { - if (strcmp(client_type, "phone") == 0) { + if (purple_strequal(client_type, "phone")) { return "mobile"; - } else if (strcmp(client_type, "web") == 0) { + } else if (purple_strequal(client_type, "web")) { return "external"; - } else if (strcmp(client_type, "handheld") == 0) { + } else if (purple_strequal(client_type, "handheld")) { return "hiptop"; - } else if (strcmp(client_type, "bot") == 0) { + } else if (purple_strequal(client_type, "bot")) { return "bot"; } /* the default value "pc" falls through and has no emblem */ @@ -2508,7 +2502,7 @@ static void jabber_password_change_cb(JabberStream *js, p1 = purple_request_fields_get_string(fields, "password1"); p2 = purple_request_fields_get_string(fields, "password2"); - if(strcmp(p1, p2)) { + if(!purple_strequal(p1, p2)) { purple_notify_error(js->gc, NULL, _("New passwords do not match."), NULL); return; } @@ -2724,7 +2718,7 @@ char *jabber_parse_error(JabberStream *js, } else if(xmlnode_get_child(error, "undefined-condition")) { text = _("Unknown Error"); } - } else if(xmlns && !strcmp(xmlns, NS_XMPP_SASL)) { + } else if(purple_strequal(xmlns, NS_XMPP_SASL)) { /* Most common reason can be the default */ SET_REASON(PURPLE_CONNECTION_ERROR_NETWORK_ERROR); if(xmlnode_get_child(packet, "aborted")) { @@ -2750,9 +2744,9 @@ char *jabber_parse_error(JabberStream *js, SET_REASON(PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED); text = _("Authentication Failure"); } - } else if(!strcmp(packet->name, "stream:error") || - (!strcmp(packet->name, "error") && xmlns && - !strcmp(xmlns, NS_XMPP_STREAMS))) { + } else if(purple_strequal(packet->name, "stream:error") || + (purple_strequal(packet->name, "error") && + purple_strequal(xmlns, NS_XMPP_STREAMS))) { /* Most common reason as default: */ SET_REASON(PURPLE_CONNECTION_ERROR_NETWORK_ERROR); if(xmlnode_get_child(packet, "bad-format")) { @@ -2930,11 +2924,11 @@ static PurpleCmdRet jabber_cmd_chat_affiliate(PurpleConversation *conv, if (!chat || !args || !args[0]) return PURPLE_CMD_RET_FAILED; - if (strcmp(args[0], "owner") != 0 && - strcmp(args[0], "admin") != 0 && - strcmp(args[0], "member") != 0 && - strcmp(args[0], "outcast") != 0 && - strcmp(args[0], "none") != 0) { + if (!purple_strequal(args[0], "owner") && + !purple_strequal(args[0], "admin") && + !purple_strequal(args[0], "member") && + !purple_strequal(args[0], "outcast") && + !purple_strequal(args[0], "none")) { *error = g_strdup_printf(_("Unknown affiliation: \"%s\""), args[0]); return PURPLE_CMD_RET_FAILED; } @@ -2966,10 +2960,10 @@ static PurpleCmdRet jabber_cmd_chat_role(PurpleConversation *conv, if (!chat || !args || !args[0]) return PURPLE_CMD_RET_FAILED; - if (strcmp(args[0], "moderator") != 0 && - strcmp(args[0], "participant") != 0 && - strcmp(args[0], "visitor") != 0 && - strcmp(args[0], "none") != 0) { + if (!purple_strequal(args[0], "moderator") && + !purple_strequal(args[0], "participant") && + !purple_strequal(args[0], "visitor") && + !purple_strequal(args[0], "none")) { *error = g_strdup_printf(_("Unknown role: \"%s\""), args[0]); return PURPLE_CMD_RET_FAILED; } @@ -3826,12 +3820,12 @@ jabber_do_init(void) ui_type = ui_info ? g_hash_table_lookup(ui_info, "client_type") : NULL; if (ui_type) { - if (strcmp(ui_type, "pc") == 0 || - strcmp(ui_type, "console") == 0 || - strcmp(ui_type, "phone") == 0 || - strcmp(ui_type, "handheld") == 0 || - strcmp(ui_type, "web") == 0 || - strcmp(ui_type, "bot") == 0) { + if (purple_strequal(ui_type, "pc") || + purple_strequal(ui_type, "console") || + purple_strequal(ui_type, "phone") || + purple_strequal(ui_type, "handheld") || + purple_strequal(ui_type, "web") || + purple_strequal(ui_type, "bot")) { type = ui_type; } } diff --git a/libpurple/protocols/jabber/jingle/content.c b/libpurple/protocols/jabber/jingle/content.c index f19d186cb4..da6ab89c2b 100644 --- a/libpurple/protocols/jabber/jingle/content.c +++ b/libpurple/protocols/jabber/jingle/content.c @@ -422,7 +422,7 @@ jingle_content_to_xml_internal(JingleContent *content, xmlnode *jingle, JingleAc xmlnode_set_attrib(node, "creator", creator); xmlnode_set_attrib(node, "name", name); xmlnode_set_attrib(node, "senders", senders); - if (strcmp("session", disposition)) + if (!purple_strequal("session", disposition)) xmlnode_set_attrib(node, "disposition", disposition); g_free(disposition); diff --git a/libpurple/protocols/jabber/jingle/iceudp.c b/libpurple/protocols/jabber/jingle/iceudp.c index 54c0d91d03..d1cae88db5 100644 --- a/libpurple/protocols/jabber/jingle/iceudp.c +++ b/libpurple/protocols/jabber/jingle/iceudp.c @@ -253,7 +253,7 @@ jingle_iceudp_add_local_candidate(JingleIceUdp *iceudp, JingleIceUdpCandidate *c for (; iter; iter = g_list_next(iter)) { JingleIceUdpCandidate *c = iter->data; - if (!strcmp(c->id, candidate->id)) { + if (purple_strequal(c->id, candidate->id)) { guint generation = c->generation + 1; g_boxed_free(JINGLE_TYPE_ICEUDP_CANDIDATE, c); @@ -285,7 +285,7 @@ jingle_iceudp_get_remote_candidate_by_id(JingleIceUdp *iceudp, GList *iter = iceudp->priv->remote_candidates; for (; iter; iter = g_list_next(iter)) { JingleIceUdpCandidate *candidate = iter->data; - if (!strcmp(candidate->id, id)) { + if (purple_strequal(candidate->id, id)) { return candidate; } } @@ -402,7 +402,7 @@ jingle_iceudp_to_xml_internal(JingleTransport *transport, xmlnode *content, Jing xmlnode_set_attrib(xmltransport, "protocol", candidate->protocol); if (candidate->reladdr != NULL && - (strcmp(candidate->ip, candidate->reladdr) || + (!purple_strequal(candidate->ip, candidate->reladdr) || (candidate->port != candidate->relport))) { gchar *relport = g_strdup_printf("%d", candidate->relport); diff --git a/libpurple/protocols/jabber/jingle/jingle.c b/libpurple/protocols/jabber/jingle/jingle.c index eeaabf037e..db6644d336 100644 --- a/libpurple/protocols/jabber/jingle/jingle.c +++ b/libpurple/protocols/jabber/jingle/jingle.c @@ -45,24 +45,24 @@ jingle_get_type(const gchar *type) if (type == NULL) return G_TYPE_NONE; - if (!strcmp(type, JINGLE_TRANSPORT_RAWUDP)) + if (purple_strequal(type, JINGLE_TRANSPORT_RAWUDP)) return JINGLE_TYPE_RAWUDP; - else if (!strcmp(type, JINGLE_TRANSPORT_ICEUDP)) + else if (purple_strequal(type, JINGLE_TRANSPORT_ICEUDP)) return JINGLE_TYPE_ICEUDP; #if 0 - else if (!strcmp(type, JINGLE_TRANSPORT_SOCKS)) + else if (purple_strequal(type, JINGLE_TRANSPORT_SOCKS)) return JINGLE_TYPE_SOCKS; - else if (!strcmp(type, JINGLE_TRANSPORT_IBB)) + else if (purple_strequal(type, JINGLE_TRANSPORT_IBB)) return JINGLE_TYPE_IBB; #endif #ifdef USE_VV - else if (!strcmp(type, JINGLE_APP_RTP)) + else if (purple_strequal(type, JINGLE_APP_RTP)) return JINGLE_TYPE_RTP; #endif #if 0 - else if (!strcmp(type, JINGLE_APP_FT)) + else if (purple_strequal(type, JINGLE_APP_FT)) return JINGLE_TYPE_FT; - else if (!strcmp(type, JINGLE_APP_XML)) + else if (purple_strequal(type, JINGLE_APP_XML)) return JINGLE_TYPE_XML; #endif else @@ -369,7 +369,7 @@ jingle_get_action_type(const gchar *action) /* Start at 1 to skip the unknown-action type */ int i = 1; for (; i < num_actions; ++i) { - if (!strcmp(action, jingle_actions[i].name)) + if (purple_strequal(action, jingle_actions[i].name)) return i; } return JINGLE_UNKNOWN_TYPE; @@ -405,7 +405,7 @@ jingle_parse(JabberStream *js, const char *from, JabberIqType type, } if (!(session = jingle_session_find_by_sid(js, sid)) - && strcmp(action, "session-initiate")) { + && !purple_strequal(action, "session-initiate")) { purple_debug_error("jingle", "jabber_jingle_session_parse couldn't find session\n"); /* send iq error here */ return; diff --git a/libpurple/protocols/jabber/jingle/rawudp.c b/libpurple/protocols/jabber/jingle/rawudp.c index b50e5a79a4..2f4c1c92c2 100644 --- a/libpurple/protocols/jabber/jingle/rawudp.c +++ b/libpurple/protocols/jabber/jingle/rawudp.c @@ -225,7 +225,7 @@ jingle_rawudp_add_local_candidate(JingleRawUdp *rawudp, JingleRawUdpCandidate *c for (; iter; iter = g_list_next(iter)) { JingleRawUdpCandidate *c = iter->data; - if (!strcmp(c->id, candidate->id)) { + if (purple_strequal(c->id, candidate->id)) { guint generation = c->generation + 1; g_boxed_free(JINGLE_TYPE_RAWUDP_CANDIDATE, c); @@ -256,7 +256,7 @@ jingle_rawudp_get_remote_candidate_by_id(JingleRawUdp *rawudp, gchar *id) GList *iter = rawudp->priv->remote_candidates; for (; iter; iter = g_list_next(iter)) { JingleRawUdpCandidate *candidate = iter->data; - if (!strcmp(candidate->id, id)) { + if (purple_strequal(candidate->id, id)) { return candidate; } } diff --git a/libpurple/protocols/jabber/jingle/rtp.c b/libpurple/protocols/jabber/jingle/rtp.c index 57783abe41..876b80fb36 100644 --- a/libpurple/protocols/jabber/jingle/rtp.c +++ b/libpurple/protocols/jabber/jingle/rtp.c @@ -311,7 +311,7 @@ jingle_rtp_transport_to_candidates(JingleTransport *transport) { const gchar *type = jingle_transport_get_transport_type(transport); GList *ret = NULL; - if (!strcmp(type, JINGLE_TRANSPORT_RAWUDP)) { + if (purple_strequal(type, JINGLE_TRANSPORT_RAWUDP)) { GList *candidates = jingle_rawudp_get_remote_candidates(JINGLE_RAWUDP(transport)); for (; candidates; candidates = g_list_delete_link(candidates, candidates)) { @@ -324,20 +324,20 @@ jingle_rtp_transport_to_candidates(JingleTransport *transport) } return ret; - } else if (!strcmp(type, JINGLE_TRANSPORT_ICEUDP)) { + } else if (purple_strequal(type, JINGLE_TRANSPORT_ICEUDP)) { GList *candidates = jingle_iceudp_get_remote_candidates(JINGLE_ICEUDP(transport)); for (; candidates; candidates = g_list_delete_link(candidates, candidates)) { JingleIceUdpCandidate *candidate = candidates->data; PurpleMediaCandidate *new_candidate = purple_media_candidate_new( candidate->foundation, candidate->component, - !strcmp(candidate->type, "host") ? + purple_strequal(candidate->type, "host") ? PURPLE_MEDIA_CANDIDATE_TYPE_HOST : - !strcmp(candidate->type, "srflx") ? + purple_strequal(candidate->type, "srflx") ? PURPLE_MEDIA_CANDIDATE_TYPE_SRFLX : - !strcmp(candidate->type, "prflx") ? + purple_strequal(candidate->type, "prflx") ? PURPLE_MEDIA_CANDIDATE_TYPE_PRFLX : - !strcmp(candidate->type, "relay") ? + purple_strequal(candidate->type, "relay") ? PURPLE_MEDIA_CANDIDATE_TYPE_RELAY : 0, PURPLE_MEDIA_NETWORK_PROTOCOL_UDP, candidate->ip, candidate->port); @@ -608,7 +608,7 @@ jingle_rtp_init_media(JingleContent *content) transmitter = "notransmitter"; g_object_unref(transport); - is_audio = g_str_equal(media_type, "audio"); + is_audio = purple_strequal(media_type, "audio"); if (purple_strequal(senders, "both")) type = is_audio ? PURPLE_MEDIA_AUDIO @@ -636,7 +636,7 @@ jingle_rtp_init_media(JingleContent *content) return FALSE; } - if (g_str_equal(creator, "initiator")) + if (purple_strequal(creator, "initiator")) is_creator = jingle_session_is_initiator(session); else is_creator = !jingle_session_is_initiator(session); @@ -675,9 +675,9 @@ jingle_rtp_parse_codecs(xmlnode *description) return NULL; } - if (g_str_equal(media, "video")) { + if (purple_strequal(media, "video")) { type = PURPLE_MEDIA_VIDEO; - } else if (g_str_equal(media, "audio")) { + } else if (purple_strequal(media, "audio")) { type = PURPLE_MEDIA_AUDIO; } else { purple_debug_warning("jingle-rtp", "unknown media type: %s\n", diff --git a/libpurple/protocols/jabber/jingle/session.c b/libpurple/protocols/jabber/jingle/session.c index 5d612aa476..cd52f5344f 100644 --- a/libpurple/protocols/jabber/jingle/session.c +++ b/libpurple/protocols/jabber/jingle/session.c @@ -385,7 +385,7 @@ static gboolean find_by_jid_ghr(gpointer key, gchar *cmp_jid = use_bare ? jabber_get_bare_jid(remote_jid) : g_strdup(remote_jid); g_free(remote_jid); - if (g_str_equal(jid, cmp_jid)) { + if (purple_strequal(jid, cmp_jid)) { g_free(cmp_jid); return TRUE; } @@ -515,12 +515,12 @@ jingle_session_find_content(JingleSession *session, const gchar *name, const gch for (; iter; iter = g_list_next(iter)) { JingleContent *content = iter->data; gchar *cname = jingle_content_get_name(content); - gboolean result = g_str_equal(name, cname); + gboolean result = purple_strequal(name, cname); g_free(cname); if (creator != NULL) { gchar *ccreator = jingle_content_get_creator(content); - result = (result && !strcmp(creator, ccreator)); + result = (result && purple_strequal(creator, ccreator)); g_free(ccreator); } @@ -542,12 +542,12 @@ jingle_session_find_pending_content(JingleSession *session, const gchar *name, c for (; iter; iter = g_list_next(iter)) { JingleContent *content = iter->data; gchar *cname = jingle_content_get_name(content); - gboolean result = g_str_equal(name, cname); + gboolean result = purple_strequal(name, cname); g_free(cname); if (creator != NULL) { gchar *ccreator = jingle_content_get_creator(content); - result = (result && !strcmp(creator, ccreator)); + result = (result && purple_strequal(creator, ccreator)); g_free(ccreator); } diff --git a/libpurple/protocols/jabber/jutil.c b/libpurple/protocols/jabber/jutil.c index aa1b734e5f..925c028875 100644 --- a/libpurple/protocols/jabber/jutil.c +++ b/libpurple/protocols/jabber/jutil.c @@ -666,7 +666,7 @@ jabber_is_own_server(JabberStream *js, const char *str) return FALSE; equal = (jid->node == NULL && - g_str_equal(jid->domain, js->user->domain) && + purple_strequal(jid->domain, js->user->domain) && jid->resource == NULL); jabber_id_free(jid); return equal; @@ -688,9 +688,9 @@ jabber_is_own_account(JabberStream *js, const char *str) return FALSE; equal = (purple_strequal(jid->node, js->user->node) && - g_str_equal(jid->domain, js->user->domain) && + purple_strequal(jid->domain, js->user->domain) && (jid->resource == NULL || - g_str_equal(jid->resource, js->user->resource))); + purple_strequal(jid->resource, js->user->resource))); jabber_id_free(jid); return equal; } @@ -729,7 +729,7 @@ jabber_buddy_status_id_get_state(const char *id) return JABBER_BUDDY_STATE_UNKNOWN; for (i = 0; i < G_N_ELEMENTS(jabber_statuses); ++i) - if (g_str_equal(id, jabber_statuses[i].status_id)) + if (purple_strequal(id, jabber_statuses[i].status_id)) return jabber_statuses[i].state; return JABBER_BUDDY_STATE_UNKNOWN; @@ -742,7 +742,7 @@ JabberBuddyState jabber_buddy_show_get_state(const char *id) g_return_val_if_fail(id != NULL, JABBER_BUDDY_STATE_UNKNOWN); for (i = 0; i < G_N_ELEMENTS(jabber_statuses); ++i) - if (jabber_statuses[i].show && g_str_equal(id, jabber_statuses[i].show)) + if (jabber_statuses[i].show && purple_strequal(id, jabber_statuses[i].show)) return jabber_statuses[i].state; purple_debug_warning("jabber", "Invalid value of presence <show/> " diff --git a/libpurple/protocols/jabber/libxmpp.c b/libpurple/protocols/jabber/libxmpp.c index 3cd86c0a39..e17e7bd50d 100644 --- a/libpurple/protocols/jabber/libxmpp.c +++ b/libpurple/protocols/jabber/libxmpp.c @@ -197,7 +197,7 @@ static PurpleAccount *find_acct(const char *prpl, const char *acct_id) } else { /* Otherwise find an active account for the protocol */ GList *l = purple_accounts_get_all(); while (l) { - if (!strcmp(prpl, purple_account_get_protocol_id(l->data)) + if (purple_strequal(prpl, purple_account_get_protocol_id(l->data)) && purple_account_is_connected(l->data)) { acct = l->data; break; diff --git a/libpurple/protocols/jabber/message.c b/libpurple/protocols/jabber/message.c index 067e5dc96b..d86b963230 100644 --- a/libpurple/protocols/jabber/message.c +++ b/libpurple/protocols/jabber/message.c @@ -51,7 +51,7 @@ static GString *jm_body_with_oob(JabberMessage *jm) { for(etc = jm->etc; etc; etc = etc->next) { xmlnode *x = etc->data; const char *xmlns = xmlnode_get_namespace(x); - if(xmlns && !strcmp(xmlns, NS_OOB_X_DATA)) { + if(purple_strequal(xmlns, NS_OOB_X_DATA)) { xmlnode *url, *desc; char *urltxt, *desctxt; @@ -64,7 +64,7 @@ static GString *jm_body_with_oob(JabberMessage *jm) { urltxt = xmlnode_get_data(url); desctxt = desc ? xmlnode_get_data(desc) : urltxt; - if(body->len && strcmp(body->str, urltxt)) + if(body->len && !purple_strequal(body->str, urltxt)) g_string_append_printf(body, "<br/><a href='%s'>%s</a>", urltxt, desctxt); else @@ -184,7 +184,7 @@ static void handle_chat(JabberMessage *jm) conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, jm->from, account); - if (conv && !g_str_equal(jm->from, + if (conv && !purple_strequal(jm->from, purple_conversation_get_name(conv))) { purple_debug_info("jabber", "Binding conversation to %s\n", jm->from); @@ -539,15 +539,15 @@ void jabber_message_parse(JabberStream *js, xmlnode *packet) jm->chat_state = JM_STATE_NONE; if(type) { - if(!strcmp(type, "normal")) + if(purple_strequal(type, "normal")) jm->type = JABBER_MESSAGE_NORMAL; - else if(!strcmp(type, "chat")) + else if(purple_strequal(type, "chat")) jm->type = JABBER_MESSAGE_CHAT; - else if(!strcmp(type, "groupchat")) + else if(purple_strequal(type, "groupchat")) jm->type = JABBER_MESSAGE_GROUPCHAT; - else if(!strcmp(type, "headline")) + else if(purple_strequal(type, "headline")) jm->type = JABBER_MESSAGE_HEADLINE; - else if(!strcmp(type, "error")) + else if(purple_strequal(type, "error")) jm->type = JABBER_MESSAGE_ERROR; else jm->type = JABBER_MESSAGE_OTHER; @@ -564,7 +564,7 @@ void jabber_message_parse(JabberStream *js, xmlnode *packet) if(child->type != XMLNODE_TYPE_TAG) continue; - if(!strcmp(child->name, "error")) { + if(purple_strequal(child->name, "error")) { const char *code = xmlnode_get_attrib(child, "code"); char *code_txt = NULL; char *text = xmlnode_get_data(child); @@ -589,20 +589,20 @@ void jabber_message_parse(JabberStream *js, xmlnode *packet) } else if (xmlns == NULL) { /* QuLogic: Not certain this is correct, but it would have happened with the previous code. */ - if(!strcmp(child->name, "x")) + if(purple_strequal(child->name, "x")) jm->etc = g_list_append(jm->etc, child); /* The following tests expect xmlns != NULL */ continue; - } else if(!strcmp(child->name, "subject") && !strcmp(xmlns, NS_XMPP_CLIENT)) { + } else if(purple_strequal(child->name, "subject") && purple_strequal(xmlns, NS_XMPP_CLIENT)) { if(!jm->subject) { jm->subject = xmlnode_get_data(child); if(!jm->subject) jm->subject = g_strdup(""); } - } else if(!strcmp(child->name, "thread") && !strcmp(xmlns, NS_XMPP_CLIENT)) { + } else if(purple_strequal(child->name, "thread") && purple_strequal(xmlns, NS_XMPP_CLIENT)) { if(!jm->thread_id) jm->thread_id = xmlnode_get_data(child); - } else if(!strcmp(child->name, "body") && !strcmp(xmlns, NS_XMPP_CLIENT)) { + } else if(purple_strequal(child->name, "body") && purple_strequal(xmlns, NS_XMPP_CLIENT)) { if(!jm->body) { char *msg = xmlnode_get_data(child); char *escaped = purple_markup_escape_text(msg, -1); @@ -610,7 +610,7 @@ void jabber_message_parse(JabberStream *js, xmlnode *packet) g_free(escaped); g_free(msg); } - } else if(!strcmp(child->name, "html") && !strcmp(xmlns, NS_XHTML_IM)) { + } else if(purple_strequal(child->name, "html") && purple_strequal(xmlns, NS_XHTML_IM)) { if(!jm->xhtml && xmlnode_get_child(child, "body")) { char *c; @@ -709,35 +709,35 @@ void jabber_message_parse(JabberStream *js, xmlnode *packet) *c = ' '; } } - } else if(!strcmp(child->name, "active") && !strcmp(xmlns,"http://jabber.org/protocol/chatstates")) { + } else if(purple_strequal(child->name, "active") && purple_strequal(xmlns,"http://jabber.org/protocol/chatstates")) { jm->chat_state = JM_STATE_ACTIVE; - } else if(!strcmp(child->name, "composing") && !strcmp(xmlns,"http://jabber.org/protocol/chatstates")) { + } else if(purple_strequal(child->name, "composing") && purple_strequal(xmlns,"http://jabber.org/protocol/chatstates")) { jm->chat_state = JM_STATE_COMPOSING; - } else if(!strcmp(child->name, "paused") && !strcmp(xmlns,"http://jabber.org/protocol/chatstates")) { + } else if(purple_strequal(child->name, "paused") && purple_strequal(xmlns,"http://jabber.org/protocol/chatstates")) { jm->chat_state = JM_STATE_PAUSED; - } else if(!strcmp(child->name, "inactive") && !strcmp(xmlns,"http://jabber.org/protocol/chatstates")) { + } else if(purple_strequal(child->name, "inactive") && purple_strequal(xmlns,"http://jabber.org/protocol/chatstates")) { jm->chat_state = JM_STATE_INACTIVE; - } else if(!strcmp(child->name, "gone") && !strcmp(xmlns,"http://jabber.org/protocol/chatstates")) { + } else if(purple_strequal(child->name, "gone") && purple_strequal(xmlns,"http://jabber.org/protocol/chatstates")) { jm->chat_state = JM_STATE_GONE; - } else if(!strcmp(child->name, "event") && !strcmp(xmlns,"http://jabber.org/protocol/pubsub#event")) { + } else if(purple_strequal(child->name, "event") && purple_strequal(xmlns,"http://jabber.org/protocol/pubsub#event")) { xmlnode *items; jm->type = JABBER_MESSAGE_EVENT; for(items = xmlnode_get_child(child,"items"); items; items = items->next) jm->eventitems = g_list_append(jm->eventitems, items); - } else if(!strcmp(child->name, "attention") && !strcmp(xmlns, NS_ATTENTION)) { + } else if(purple_strequal(child->name, "attention") && purple_strequal(xmlns, NS_ATTENTION)) { jm->hasBuzz = TRUE; - } else if(!strcmp(child->name, "delay") && !strcmp(xmlns, NS_DELAYED_DELIVERY)) { + } else if(purple_strequal(child->name, "delay") && purple_strequal(xmlns, NS_DELAYED_DELIVERY)) { const char *timestamp = xmlnode_get_attrib(child, "stamp"); jm->delayed = TRUE; if(timestamp) jm->sent = purple_str_to_time(timestamp, TRUE, NULL, NULL, NULL); - } else if(!strcmp(child->name, "x")) { - if(!strcmp(xmlns, NS_DELAYED_DELIVERY_LEGACY)) { + } else if(purple_strequal(child->name, "x")) { + if(purple_strequal(xmlns, NS_DELAYED_DELIVERY_LEGACY)) { const char *timestamp = xmlnode_get_attrib(child, "stamp"); jm->delayed = TRUE; if(timestamp) jm->sent = purple_str_to_time(timestamp, TRUE, NULL, NULL, NULL); - } else if(!strcmp(xmlns, "jabber:x:conference") && + } else if(purple_strequal(xmlns, "jabber:x:conference") && jm->type != JABBER_MESSAGE_GROUPCHAT_INVITE && jm->type != JABBER_MESSAGE_ERROR) { const char *jid = xmlnode_get_attrib(child, "jid"); @@ -759,7 +759,7 @@ void jabber_message_parse(JabberStream *js, xmlnode *packet) jm->password = g_strdup(password); } } - } else if(!strcmp(xmlns, "http://jabber.org/protocol/muc#user") && + } else if(purple_strequal(xmlns, "http://jabber.org/protocol/muc#user") && jm->type != JABBER_MESSAGE_ERROR) { xmlnode *invite = xmlnode_get_child(child, "invite"); if(invite) { @@ -782,7 +782,7 @@ void jabber_message_parse(JabberStream *js, xmlnode *packet) } else { jm->etc = g_list_append(jm->etc, child); } - } else if (g_str_equal(child->name, "query")) { + } else if (purple_strequal(child->name, "query")) { const char *node = xmlnode_get_attrib(child, "node"); if (purple_strequal(xmlns, NS_DISCO_ITEMS) && purple_strequal(node, "http://jabber.org/protocol/commands")) { @@ -825,13 +825,13 @@ void jabber_message_parse(JabberStream *js, xmlnode *packet) static const gchar * jabber_message_get_mimetype_from_ext(const gchar *ext) { - if (strcmp(ext, "png") == 0) { + if (purple_strequal(ext, "png")) { return "image/png"; - } else if (strcmp(ext, "gif") == 0) { + } else if (purple_strequal(ext, "gif")) { return "image/gif"; - } else if (strcmp(ext, "jpg") == 0) { + } else if (purple_strequal(ext, "jpg")) { return "image/jpeg"; - } else if (strcmp(ext, "tif") == 0) { + } else if (purple_strequal(ext, "tif")) { return "image/tif"; } else { return "image/x-icon"; /* or something... */ diff --git a/libpurple/protocols/jabber/oob.c b/libpurple/protocols/jabber/oob.c index 74f932f56f..6d4f1962bc 100644 --- a/libpurple/protocols/jabber/oob.c +++ b/libpurple/protocols/jabber/oob.c @@ -173,11 +173,11 @@ static void jabber_oob_xfer_recv_error(PurpleXfer *xfer, const char *code) { jabber_iq_set_id(iq, jox->iq_id); y = xmlnode_new_child(iq->node, "error"); xmlnode_set_attrib(y, "code", code); - if(!strcmp(code, "406")) { + if(purple_strequal(code, "406")) { z = xmlnode_new_child(y, "not-acceptable"); xmlnode_set_attrib(y, "type", "modify"); xmlnode_set_namespace(z, NS_XMPP_STANZAS); - } else if(!strcmp(code, "404")) { + } else if(purple_strequal(code, "404")) { z = xmlnode_new_child(y, "not-found"); xmlnode_set_attrib(y, "type", "cancel"); xmlnode_set_namespace(z, NS_XMPP_STANZAS); diff --git a/libpurple/protocols/jabber/parser.c b/libpurple/protocols/jabber/parser.c index 5e3aa950ef..c72c428912 100644 --- a/libpurple/protocols/jabber/parser.c +++ b/libpurple/protocols/jabber/parser.c @@ -191,8 +191,8 @@ jabber_parser_structured_error_handler(void *user_data, xmlErrorPtr error) { JabberStream *js = user_data; - if (error->level == XML_ERR_WARNING && error->message != NULL - && g_str_equal(error->message, "xmlns: URI vcard-temp is not absolute\n")) + if (error->level == XML_ERR_WARNING + && purple_strequal(error->message, "xmlns: URI vcard-temp is not absolute\n")) /* * This message happens when parsing vcards, and is normal, so don't * bother logging it because people scare easily. diff --git a/libpurple/protocols/jabber/presence.c b/libpurple/protocols/jabber/presence.c index efeab830d5..9a426beb47 100644 --- a/libpurple/protocols/jabber/presence.c +++ b/libpurple/protocols/jabber/presence.c @@ -69,7 +69,7 @@ str_to_presence_type(const char *type) return JABBER_PRESENCE_AVAILABLE; for (i = 0; i < G_N_ELEMENTS(jabber_presence_types); ++i) - if (g_str_equal(type, jabber_presence_types[i].name)) + if (purple_strequal(type, jabber_presence_types[i].name)) return jabber_presence_types[i].type; purple_debug_warning("jabber", "Unknown presence type '%s'\n", type); @@ -212,12 +212,10 @@ void jabber_presence_send(JabberStream *js, gboolean force) stripped = jabber_google_presence_outgoing(tune); } -#define CHANGED(a,b) ((!a && b) || (a && a[0] == '\0' && b && b[0] != '\0') || \ - (a && !b) || (a && a[0] != '\0' && b && b[0] == '\0') || (a && b && strcmp(a,b))) /* check if there are any differences to the <presence> and send them in that case */ if (force || allowBuzz != js->allowBuzz || js->old_state != state || - CHANGED(js->old_msg, stripped) || js->old_priority != priority || - CHANGED(js->old_avatarhash, js->avatar_hash) || js->old_idle != js->idle) { + !purple_strequal(js->old_msg, stripped) || js->old_priority != priority || + !purple_strequal(js->old_avatarhash, js->avatar_hash) || js->old_idle != js->idle) { /* Need to update allowBuzz before creating the presence (with caps) */ js->allowBuzz = allowBuzz; @@ -268,8 +266,9 @@ void jabber_presence_send(JabberStream *js, gboolean force) purple_status_get_attr_int(tune, PURPLE_TUNE_TIME); } - if(CHANGED(artist, js->old_artist) || CHANGED(title, js->old_title) || CHANGED(source, js->old_source) || - CHANGED(uri, js->old_uri) || CHANGED(track, js->old_track) || (length != js->old_length)) { + if(!purple_strequal(artist, js->old_artist) || !purple_strequal(title, js->old_title) || + !purple_strequal(source, js->old_source) || !purple_strequal(uri, js->old_uri) || + !purple_strequal(track, js->old_track) || (length != js->old_length)) { PurpleJabberTuneInfo tuneinfo = { (char*)artist, (char*)title, @@ -591,7 +590,7 @@ handle_presence_chat(JabberStream *js, JabberPresence *presence, xmlnode *packet } if (g_slist_find(presence->chat_info.codes, GINT_TO_POINTER(110)) || - g_str_equal(presence->jid_from->resource, chat->handle) || + purple_strequal(presence->jid_from->resource, chat->handle) || purple_strequal(presence->to, jid)) is_our_resource = TRUE; @@ -620,9 +619,9 @@ handle_presence_chat(JabberStream *js, JabberPresence *presence, xmlnode *packet if (purple_strequal(affiliation, "owner")) flags |= PURPLE_CBFLAGS_FOUNDER; if (role) { - if (g_str_equal(role, "moderator")) + if (purple_strequal(role, "moderator")) flags |= PURPLE_CBFLAGS_OP; - else if (g_str_equal(role, "participant")) + else if (purple_strequal(role, "participant")) flags |= PURPLE_CBFLAGS_VOICE; } @@ -664,12 +663,12 @@ handle_presence_chat(JabberStream *js, JabberPresence *presence, xmlnode *packet */ if (!presence->jid_from->resource || !chat->conv || chat->left) { if (chat->left && - presence->jid_from->resource && chat->handle && !strcmp(presence->jid_from->resource, chat->handle)) + presence->jid_from->resource && chat->handle && purple_strequal(presence->jid_from->resource, chat->handle)) jabber_chat_destroy(chat); return FALSE; } - is_our_resource = g_str_equal(presence->jid_from->resource, chat->handle); + is_our_resource = purple_strequal(presence->jid_from->resource, chat->handle); jabber_buddy_remove_resource(presence->jb, presence->jid_from->resource); @@ -698,7 +697,7 @@ handle_presence_chat(JabberStream *js, JabberPresence *presence, xmlnode *packet } else { nick_change = TRUE; - if (g_str_equal(presence->jid_from->resource, chat->handle)) { + if (purple_strequal(presence->jid_from->resource, chat->handle)) { /* Changing our own nickname */ g_free(chat->handle); /* TODO: This should be resourceprep'd */ @@ -1051,8 +1050,8 @@ void jabber_presence_parse(JabberStream *js, xmlnode *packet) /* Look it up if we don't already have all this information */ if (!jbr || !jbr->caps.info || - !g_str_equal(node, jbr->caps.info->tuple.node) || - !g_str_equal(ver, jbr->caps.info->tuple.ver) || + !purple_strequal(node, jbr->caps.info->tuple.node) || + !purple_strequal(ver, jbr->caps.info->tuple.ver) || !purple_strequal(hash, jbr->caps.info->tuple.hash) || !jabber_caps_exts_known(jbr->caps.info, (gchar **)exts)) { JabberPresenceCapabilities *userdata = g_new0(JabberPresenceCapabilities, 1); diff --git a/libpurple/protocols/jabber/roster.c b/libpurple/protocols/jabber/roster.c index 35f0e29f82..2a46c9f215 100644 --- a/libpurple/protocols/jabber/roster.c +++ b/libpurple/protocols/jabber/roster.c @@ -139,7 +139,7 @@ static void add_purple_buddy_to_groups(JabberStream *js, const char *jid, */ l = g_slist_find_custom(groups, purple_group_get_name(g), (GCompareFunc)purple_utf8_strcasecmp); - if (!l && g_strcmp0(purple_group_get_name(g), _("Buddies")) == 0) { + if (!l && purple_strequal(purple_group_get_name(g), _("Buddies"))) { l = g_slist_find_custom(groups, JABBER_ROSTER_DEFAULT_GROUP, (GCompareFunc)purple_utf8_strcasecmp); } @@ -228,17 +228,17 @@ void jabber_roster_parse(JabberStream *js, const char *from, continue; if(subscription) { - if (g_str_equal(subscription, "remove")) + if (purple_strequal(subscription, "remove")) jb->subscription = JABBER_SUB_REMOVE; else if (jb == js->user_jb) jb->subscription = JABBER_SUB_BOTH; - else if (g_str_equal(subscription, "none")) + else if (purple_strequal(subscription, "none")) jb->subscription = JABBER_SUB_NONE; - else if (g_str_equal(subscription, "to")) + else if (purple_strequal(subscription, "to")) jb->subscription = JABBER_SUB_TO; - else if (g_str_equal(subscription, "from")) + else if (purple_strequal(subscription, "from")) jb->subscription = JABBER_SUB_FROM; - else if (g_str_equal(subscription, "both")) + else if (purple_strequal(subscription, "both")) jb->subscription = JABBER_SUB_BOTH; } @@ -260,7 +260,7 @@ void jabber_roster_parse(JabberStream *js, const char *from, char *group_name = xmlnode_get_data(group); if (group_name == NULL || *group_name == '\0' || - g_strcmp0(group_name, _("Buddies")) == 0) + purple_strequal(group_name, _("Buddies"))) { /* Changing this string? Look in add_purple_buddy_to_groups */ group_name = g_strdup(JABBER_ROSTER_DEFAULT_GROUP); @@ -453,7 +453,7 @@ void jabber_roster_group_change(PurpleConnection *gc, const char *name, GSList *buddies, *groups = NULL; PurpleBuddy *b; - if(!old_group || !new_group || !strcmp(old_group, new_group)) + if(!old_group || !new_group || purple_strequal(old_group, new_group)) return; buddies = purple_find_buddies(gc->account, name); @@ -530,7 +530,7 @@ jabber_roster_group_get_global_name(PurpleGroup *group) if (name == NULL) name = JABBER_ROSTER_DEFAULT_GROUP; - else if (g_strcmp0(name, _("Buddies")) == 0) + else if (purple_strequal(name, _("Buddies"))) name = JABBER_ROSTER_DEFAULT_GROUP; /* XXX: in 3.0.0 we have localized default name here too */ diff --git a/libpurple/protocols/jabber/si.c b/libpurple/protocols/jabber/si.c index ba6c610252..c1635c16fe 100644 --- a/libpurple/protocols/jabber/si.c +++ b/libpurple/protocols/jabber/si.c @@ -89,7 +89,7 @@ jabber_si_xfer_find(JabberStream *js, const char *sid, const char *from) PurpleXfer *xfer = xfers->data; JabberSIXfer *jsx = xfer->data; if(jsx->stream_id && xfer->who && - !strcmp(jsx->stream_id, sid) && !strcmp(xfer->who, from)) + purple_strequal(jsx->stream_id, sid) && purple_strequal(xfer->who, from)) return xfer; } @@ -775,7 +775,7 @@ jabber_si_connect_proxy_cb(JabberStream *js, const char *from, { gchar *my_jid = g_strdup_printf("%s@%s/%s", jsx->js->user->node, jsx->js->user->domain, jsx->js->user->resource); - if (!strcmp(jid, my_jid)) { + if (purple_strequal(jid, my_jid)) { purple_debug_info("jabber", "Got local SOCKS5 streamhost-used.\n"); purple_xfer_start(xfer, xfer->fd, NULL, -1); } else { @@ -881,7 +881,7 @@ jabber_si_xfer_bytestreams_listen_cb(int sock, gpointer data) } /* Include the public IP (assuming that there is a port mapped somehow) */ - if (!has_public_ip && strcmp(public_ip, "0.0.0.0") != 0) { + if (!has_public_ip && !purple_strequal(public_ip, "0.0.0.0")) { streamhost_count++; streamhost = xmlnode_new_child(query, "streamhost"); xmlnode_set_attrib(streamhost, "jid", jid); @@ -1204,14 +1204,14 @@ static void jabber_si_xfer_send_method_cb(JabberStream *js, const char *from, const char *var = xmlnode_get_attrib(field, "var"); JabberSIXfer *jsx = (JabberSIXfer *) xfer->data; - if(var && !strcmp(var, "stream-method")) { + if(purple_strequal(var, "stream-method")) { if((value = xmlnode_get_child(field, "value"))) { char *val = xmlnode_get_data(value); - if(val && !strcmp(val, NS_BYTESTREAMS)) { + if(purple_strequal(val, NS_BYTESTREAMS)) { jabber_si_xfer_bytestreams_send_init(xfer); jsx->stream_method |= STREAM_METHOD_BYTESTREAMS; found_method = TRUE; - } else if (val && !strcmp(val, NS_IBB)) { + } else if (purple_strequal(val, NS_IBB)) { jsx->stream_method |= STREAM_METHOD_IBB; if (!found_method) { /* we haven't tried to init a bytestream session, yet @@ -1696,7 +1696,7 @@ void jabber_si_parse(JabberStream *js, const char *from, JabberIqType type, size_t filesize = 0; if(!(profile = xmlnode_get_attrib(si, "profile")) || - strcmp(profile, NS_SI_FILE_TRANSFER)) + !purple_strequal(profile, NS_SI_FILE_TRANSFER)) return; if(!(stream_id = xmlnode_get_attrib(si, "id"))) @@ -1749,15 +1749,15 @@ void jabber_si_parse(JabberStream *js, const char *from, JabberIqType type, for(field = xmlnode_get_child(x, "field"); field; field = xmlnode_get_next_twin(field)) { const char *var = xmlnode_get_attrib(field, "var"); - if(var && !strcmp(var, "stream-method")) { + if(purple_strequal(var, "stream-method")) { for(option = xmlnode_get_child(field, "option"); option; option = xmlnode_get_next_twin(option)) { if((value = xmlnode_get_child(option, "value"))) { char *val; if((val = xmlnode_get_data(value))) { - if(!strcmp(val, NS_BYTESTREAMS)) { + if(purple_strequal(val, NS_BYTESTREAMS)) { jsx->stream_method |= STREAM_METHOD_BYTESTREAMS; - } else if(!strcmp(val, NS_IBB)) { + } else if(purple_strequal(val, NS_IBB)) { jsx->stream_method |= STREAM_METHOD_IBB; } g_free(val); diff --git a/libpurple/protocols/jabber/useravatar.c b/libpurple/protocols/jabber/useravatar.c index a629de4516..152e3d6f85 100644 --- a/libpurple/protocols/jabber/useravatar.c +++ b/libpurple/protocols/jabber/useravatar.c @@ -352,17 +352,17 @@ update_buddy_metadata(JabberStream *js, const char *from, xmlnode *items) for(info = metadata->child; info; info = info->next) { if(info->type == XMLNODE_TYPE_TAG) has_children = TRUE; - if(info->type == XMLNODE_TYPE_TAG && !strcmp(info->name,"info")) { + if(info->type == XMLNODE_TYPE_TAG && purple_strequal(info->name,"info")) { const char *type = xmlnode_get_attrib(info,"type"); const char *id = xmlnode_get_attrib(info,"id"); - if(checksum && id && !strcmp(id, checksum)) { + if(checksum && id && purple_strequal(id, checksum)) { /* we already have that avatar, so we don't have to do anything */ goodinfo = NULL; break; } /* We'll only pick the png one for now. It's a very nice image format anyways. */ - if(type && id && !goodinfo && !strcmp(type, "image/png")) + if(id && !goodinfo && purple_strequal(type, "image/png")) goodinfo = info; } } diff --git a/libpurple/protocols/jabber/usermood.c b/libpurple/protocols/jabber/usermood.c index 6d9b30f6af..7b01f49b23 100644 --- a/libpurple/protocols/jabber/usermood.c +++ b/libpurple/protocols/jabber/usermood.c @@ -135,14 +135,14 @@ static void jabber_mood_cb(JabberStream *js, const char *from, xmlnode *items) { return; for (moodinfo = mood->child; moodinfo; moodinfo = moodinfo->next) { if (moodinfo->type == XMLNODE_TYPE_TAG) { - if (!strcmp(moodinfo->name, "text")) { + if (purple_strequal(moodinfo->name, "text")) { if (!moodtext) /* only pick the first one */ moodtext = xmlnode_get_data(moodinfo); } else { int i; for (i = 0; moods[i].mood; ++i) { /* verify that the mood is known (valid) */ - if (!strcmp(moodinfo->name, moods[i].mood)) { + if (purple_strequal(moodinfo->name, moods[i].mood)) { newmood = moods[i].mood; break; } diff --git a/libpurple/protocols/jabber/usertune.c b/libpurple/protocols/jabber/usertune.c index 03e485ef1b..75a524268e 100644 --- a/libpurple/protocols/jabber/usertune.c +++ b/libpurple/protocols/jabber/usertune.c @@ -58,11 +58,11 @@ static void jabber_tune_cb(JabberStream *js, const char *from, xmlnode *items) { return; /* huh? */ for (tuneinfo = tune->child; tuneinfo; tuneinfo = tuneinfo->next) { if (tuneinfo->type == XMLNODE_TYPE_TAG) { - if (!strcmp(tuneinfo->name, "artist")) { + if (purple_strequal(tuneinfo->name, "artist")) { if (tuneinfodata.artist == NULL) /* only pick the first one */ tuneinfodata.artist = xmlnode_get_data(tuneinfo); valid = TRUE; - } else if (!strcmp(tuneinfo->name, "length")) { + } else if (purple_strequal(tuneinfo->name, "length")) { if (tuneinfodata.time == -1) { char *length = xmlnode_get_data(tuneinfo); if (length) @@ -71,19 +71,19 @@ static void jabber_tune_cb(JabberStream *js, const char *from, xmlnode *items) { if (tuneinfodata.time > 0) valid = TRUE; } - } else if (!strcmp(tuneinfo->name, "source")) { + } else if (purple_strequal(tuneinfo->name, "source")) { if (tuneinfodata.album == NULL) /* only pick the first one */ tuneinfodata.album = xmlnode_get_data(tuneinfo); valid = TRUE; - } else if (!strcmp(tuneinfo->name, "title")) { + } else if (purple_strequal(tuneinfo->name, "title")) { if (tuneinfodata.title == NULL) /* only pick the first one */ tuneinfodata.title = xmlnode_get_data(tuneinfo); valid = TRUE; - } else if (!strcmp(tuneinfo->name, "track")) { + } else if (purple_strequal(tuneinfo->name, "track")) { if (tuneinfodata.track == NULL) /* only pick the first one */ tuneinfodata.track = xmlnode_get_data(tuneinfo); valid = TRUE; - } else if (!strcmp(tuneinfo->name, "uri")) { + } else if (purple_strequal(tuneinfo->name, "uri")) { if (tuneinfodata.url == NULL) /* only pick the first one */ tuneinfodata.url = xmlnode_get_data(tuneinfo); valid = TRUE; diff --git a/libpurple/protocols/jabber/xdata.c b/libpurple/protocols/jabber/xdata.c index e681694396..faf5a48909 100644 --- a/libpurple/protocols/jabber/xdata.c +++ b/libpurple/protocols/jabber/xdata.c @@ -64,7 +64,7 @@ static void jabber_x_data_ok_cb(struct jabber_x_data_data *data, PurpleRequestFi PurpleRequestField *field = flds->data; const char *id = purple_request_field_get_id(field); int handleindex; - if(strcmp(id, "libpurple:jabber:xdata:actions")) + if(!purple_strequal(id, "libpurple:jabber:xdata:actions")) continue; handleindex = purple_request_field_choice_get_value(field); actionhandle = g_strdup(g_list_nth_data(data->actions, handleindex)); @@ -230,12 +230,12 @@ void *jabber_x_data_request_with_actions(JabberStream *js, xmlnode *packet, GLis if(!type) type = "text-single"; - if(!var && strcmp(type, "fixed")) + if(!var && !purple_strequal(type, "fixed")) continue; if(!label) label = var; - if(!strcmp(type, "text-private")) { + if(purple_strequal(type, "text-private")) { if((valuenode = xmlnode_get_child(fn, "value"))) value = xmlnode_get_data(valuenode); @@ -247,7 +247,7 @@ void *jabber_x_data_request_with_actions(JabberStream *js, xmlnode *packet, GLis g_hash_table_replace(data->fields, g_strdup(var), GINT_TO_POINTER(JABBER_X_DATA_TEXT_SINGLE)); g_free(value); - } else if(!strcmp(type, "text-multi") || !strcmp(type, "jid-multi")) { + } else if(purple_strequal(type, "text-multi") || purple_strequal(type, "jid-multi")) { GString *str = g_string_new(""); for(valuenode = xmlnode_get_child(fn, "value"); valuenode; @@ -267,13 +267,13 @@ void *jabber_x_data_request_with_actions(JabberStream *js, xmlnode *packet, GLis g_hash_table_replace(data->fields, g_strdup(var), GINT_TO_POINTER(JABBER_X_DATA_TEXT_MULTI)); g_string_free(str, TRUE); - } else if(!strcmp(type, "list-single") || !strcmp(type, "list-multi")) { + } else if(purple_strequal(type, "list-single") || purple_strequal(type, "list-multi")) { xmlnode *optnode; GList *selected = NULL; field = purple_request_field_list_new(var, label); - if(!strcmp(type, "list-multi")) { + if(purple_strequal(type, "list-multi")) { purple_request_field_list_set_multi_select(field, TRUE); g_hash_table_replace(data->fields, g_strdup(var), GINT_TO_POINTER(JABBER_X_DATA_LIST_MULTI)); @@ -316,7 +316,7 @@ void *jabber_x_data_request_with_actions(JabberStream *js, xmlnode *packet, GLis selected = g_list_delete_link(selected, selected); } - } else if(!strcmp(type, "boolean")) { + } else if(purple_strequal(type, "boolean")) { gboolean def = FALSE; if((valuenode = xmlnode_get_child(fn, "value"))) @@ -332,7 +332,7 @@ void *jabber_x_data_request_with_actions(JabberStream *js, xmlnode *packet, GLis g_hash_table_replace(data->fields, g_strdup(var), GINT_TO_POINTER(JABBER_X_DATA_BOOLEAN)); g_free(value); - } else if(!strcmp(type, "fixed")) { + } else if(purple_strequal(type, "fixed")) { if((valuenode = xmlnode_get_child(fn, "value"))) value = xmlnode_get_data(valuenode); @@ -342,7 +342,7 @@ void *jabber_x_data_request_with_actions(JabberStream *js, xmlnode *packet, GLis g_free(value); } - } else if(!strcmp(type, "hidden")) { + } else if(purple_strequal(type, "hidden")) { if((valuenode = xmlnode_get_child(fn, "value"))) value = xmlnode_get_data(valuenode); @@ -362,7 +362,7 @@ void *jabber_x_data_request_with_actions(JabberStream *js, xmlnode *packet, GLis value ? value : "", FALSE); purple_request_field_group_add_field(group, field); - if(!strcmp(type, "jid-single")) { + if(purple_strequal(type, "jid-single")) { purple_request_field_set_type_hint(field, "screenname"); g_hash_table_replace(data->fields, g_strdup(var), GINT_TO_POINTER(JABBER_X_DATA_JID_SINGLE)); } else { diff --git a/libpurple/protocols/novell/nmconn.c b/libpurple/protocols/novell/nmconn.c index 774d339f4e..fe01f52f48 100644 --- a/libpurple/protocols/novell/nmconn.c +++ b/libpurple/protocols/novell/nmconn.c @@ -30,6 +30,8 @@ #include <windows.h> #endif +#include "util.h" + #define NO_ESCAPE(ch) ((ch == 0x20) || (ch >= 0x30 && ch <= 0x39) || \ (ch >= 0x41 && ch <= 0x5a) || (ch >= 0x61 && ch <= 0x7a)) @@ -428,7 +430,7 @@ nm_send_request(NMConn *conn, char *cmd, NMField *fields, /* Write headers */ if (rc == NM_OK) { - if (strcmp("login", cmd) == 0) { + if (purple_strequal("login", cmd)) { bytes_to_send = g_snprintf(buffer, sizeof(buffer), "Host: %s:%d\r\n\r\n", conn->addr, conn->port); ret = nm_tcp_write(conn, buffer, bytes_to_send); @@ -524,7 +526,7 @@ nm_read_header(NMConn * conn) /* Finish reading header, in the future we might want to do more processing here */ /* TODO: handle more general redirects in the future */ - while ((rc == NM_OK) && (strcmp(buffer, "\r\n") != 0)) { + while ((rc == NM_OK) && (!purple_strequal(buffer, "\r\n"))) { rc = read_line(conn, buffer, sizeof(buffer)); } diff --git a/libpurple/protocols/novell/nmcontact.c b/libpurple/protocols/novell/nmcontact.c index 5a390ea35c..bdd691b4c3 100644 --- a/libpurple/protocols/novell/nmcontact.c +++ b/libpurple/protocols/novell/nmcontact.c @@ -23,6 +23,7 @@ #include "nmcontact.h" #include "nmfield.h" #include "nmuser.h" +#include "util.h" struct _NMContact { @@ -83,7 +84,7 @@ nm_create_contact_from_fields(NMField * fields) NMField *field; if ( fields == NULL || fields->tag == NULL || fields->ptr_value == 0 || - strcmp(fields->tag, NM_A_FA_CONTACT) ) + !purple_strequal(fields->tag, NM_A_FA_CONTACT) ) { return NULL; } diff --git a/libpurple/protocols/novell/nmrtf.c b/libpurple/protocols/novell/nmrtf.c index e0db15d420..36bc774581 100644 --- a/libpurple/protocols/novell/nmrtf.c +++ b/libpurple/protocols/novell/nmrtf.c @@ -30,6 +30,7 @@ #include <string.h> #include "nmrtf.h" #include "debug.h" +#include "util.h" /* Internal RTF parser error codes */ #define NMRTF_OK 0 /* Everything's fine! */ @@ -707,7 +708,7 @@ rtf_dispatch_control(NMRtfContext *ctx, char *keyword, int param, gboolean param int idx; for (idx = 0; idx < table_size; idx++) { - if (strcmp(keyword, rtf_symbols[idx].keyword) == 0) + if (purple_strequal(keyword, rtf_symbols[idx].keyword)) break; } diff --git a/libpurple/protocols/novell/nmuser.c b/libpurple/protocols/novell/nmuser.c index ed3dcea081..51e4edfc7e 100644 --- a/libpurple/protocols/novell/nmuser.c +++ b/libpurple/protocols/novell/nmuser.c @@ -1451,7 +1451,7 @@ nm_find_folder(NMUser * user, const char *name) for (i = 0; i < num_folders; i++) { temp = nm_folder_get_subfolder(user->root_folder, i); tname = nm_folder_get_name(temp); - if (tname && (strcmp(tname, name) == 0)) { + if (tname && purple_strequal(tname, name)) { folder = temp; break; } @@ -1570,7 +1570,7 @@ nm_call_handler(NMUser * user, NMRequest * request, NMField * fields) cmd = nm_request_get_cmd(request); if (ret_code == NM_OK && cmd != NULL) { - if (strcmp("login", cmd) == 0) { + if (purple_strequal("login", cmd)) { user->user_record = nm_create_user_record_from_fields(fields); @@ -1580,11 +1580,11 @@ nm_call_handler(NMUser * user, NMRequest * request, NMField * fields) nm_create_contact_list(user); done = _create_privacy_list(user, request); - } else if (strcmp("setstatus", cmd) == 0) { + } else if (purple_strequal("setstatus", cmd)) { /* Nothing to do */ - } else if (strcmp("createconf", cmd) == 0) { + } else if (purple_strequal("createconf", cmd)) { conf = (NMConference *) nm_request_get_data(request); @@ -1601,12 +1601,12 @@ nm_call_handler(NMUser * user, NMRequest * request, NMField * fields) nm_conference_list_add(user, conf); nm_release_conference(conf); - } else if (strcmp("leaveconf", cmd) == 0) { + } else if (purple_strequal("leaveconf", cmd)) { conf = (NMConference *) nm_request_get_data(request); nm_conference_list_remove(user, conf); - } else if (strcmp("joinconf", cmd) == 0) { + } else if (purple_strequal("joinconf", cmd)) { GSList *list = NULL, *node; conf = nm_request_get_data(request); @@ -1653,7 +1653,7 @@ nm_call_handler(NMUser * user, NMRequest * request, NMField * fields) } } - } else if (strcmp("getdetails", cmd) == 0) { + } else if (purple_strequal("getdetails", cmd)) { locate = nm_locate_field(NM_A_FA_RESULTS, fields); while (locate && locate->ptr_value != 0) { @@ -1684,11 +1684,11 @@ nm_call_handler(NMUser * user, NMRequest * request, NMField * fields) locate = nm_locate_field(NM_A_FA_RESULTS, locate+1); } - } else if (strcmp("createfolder", cmd) == 0) { + } else if (purple_strequal("createfolder", cmd)) { _update_contact_list(user, fields); - } else if (strcmp("createcontact", cmd) == 0) { + } else if (purple_strequal("createcontact", cmd)) { _update_contact_list(user, fields); @@ -1712,15 +1712,15 @@ nm_call_handler(NMUser * user, NMRequest * request, NMField * fields) } - } else if (strcmp("deletecontact", cmd) == 0) { + } else if (purple_strequal("deletecontact", cmd)) { _update_contact_list(user, fields); - } else if (strcmp("movecontact", cmd) == 0) { + } else if (purple_strequal("movecontact", cmd)) { _update_contact_list(user, fields); - } else if (strcmp("getstatus", cmd) == 0) { + } else if (purple_strequal("getstatus", cmd)) { locate = nm_locate_field(NM_A_SZ_STATUS, fields); if (locate) { @@ -1729,11 +1729,11 @@ nm_call_handler(NMUser * user, NMRequest * request, NMField * fields) atoi((char *) locate->ptr_value), NULL); } - } else if (strcmp("updateitem", cmd) == 0) { + } else if (purple_strequal("updateitem", cmd)) { /* Nothing extra to do here */ - } else if (strcmp("createblock", cmd) == 0) { + } else if (purple_strequal("createblock", cmd)) { if ((locate = nm_locate_field(NM_A_BLOCKING_DENY_LIST, fields))) { if (locate->ptr_value) { user->deny_list = g_slist_append(user->deny_list, g_strdup((char *)locate->ptr_value)); @@ -1743,7 +1743,7 @@ nm_call_handler(NMUser * user, NMRequest * request, NMField * fields) user->allow_list = g_slist_append(user->allow_list, g_strdup((char *)locate->ptr_value)); } } - } else if (strcmp("updateblocks", cmd) == 0) { + } else if (purple_strequal("updateblocks", cmd)) { /* nothing to do here */ } else { @@ -1971,7 +1971,7 @@ _update_contact_list(NMUser * user, NMField * fields) return; /* Is it wrapped in a RESULTS array? */ - if (strcmp(fields->tag, NM_A_FA_RESULTS) == 0) { + if (purple_strequal(fields->tag, NM_A_FA_RESULTS)) { list = (NMField *) fields->ptr_value; } else { list = fields; diff --git a/libpurple/protocols/novell/novell.c b/libpurple/protocols/novell/novell.c index 817974f7db..d1f3279b13 100644 --- a/libpurple/protocols/novell/novell.c +++ b/libpurple/protocols/novell/novell.c @@ -293,7 +293,7 @@ _get_details_resp_setup_buddy(NMUser * user, NMERR_T ret_code, nm_user_record_get_display_id(user_record)); alias = purple_buddy_get_alias(buddy); - if (alias == NULL || *alias == '\0' || (strcmp(alias, purple_buddy_get_name(buddy)) == 0)) { + if (alias == NULL || *alias == '\0' || purple_strequal(alias, purple_buddy_get_name(buddy))) { purple_blist_alias_buddy(buddy, nm_user_record_get_full_name(user_record)); @@ -359,7 +359,7 @@ _create_contact_resp_cb(NMUser * user, NMERR_T ret_code, if (display_id == NULL) display_id = nm_contact_get_dn(new_contact); - if (alias && strcmp(alias, display_id)) { + if (alias && !purple_strequal(alias, display_id)) { /* The user requested an alias, tell the server about it. */ rc = nm_send_rename_contact(user, new_contact, alias, @@ -1252,7 +1252,7 @@ _remove_purple_buddies(NMUser *user) continue; buddy = (PurpleBuddy *) bnode; if (purple_buddy_get_account(buddy) == user->client_data) { - if (strcmp(gname, NM_ROOT_FOLDER_NAME) == 0) + if (purple_strequal(gname, NM_ROOT_FOLDER_NAME)) gname = ""; folder = nm_find_folder(user, gname); if (folder == NULL || @@ -1480,19 +1480,19 @@ _map_property_tag(const char *tag) { if (tag == NULL) return NULL; - if (strcmp(tag, "telephoneNumber") == 0) + if (purple_strequal(tag, "telephoneNumber")) return _("Telephone Number"); - else if (strcmp(tag, "L") == 0) + else if (purple_strequal(tag, "L")) return _("Location"); - else if (strcmp(tag, "OU") == 0) + else if (purple_strequal(tag, "OU")) return _("Department"); - else if (strcmp(tag, "personalTitle") == 0) + else if (purple_strequal(tag, "personalTitle")) return _("Personal Title"); - else if (strcmp(tag, "Title") == 0) + else if (purple_strequal(tag, "Title")) return _("Job Title"); - else if (strcmp(tag, "mailstop") == 0) + else if (purple_strequal(tag, "mailstop")) return _("Mailstop"); - else if (strcmp(tag, "Internet EMail Address") == 0) + else if (purple_strequal(tag, "Internet EMail Address")) return _("Email Address"); else return tag; @@ -2564,14 +2564,14 @@ novell_add_buddy(PurpleConnection * gc, PurpleBuddy *buddy, PurpleGroup * group) */ alias = purple_buddy_get_alias(buddy); bname = purple_buddy_get_name(buddy); - if (alias && strcmp(alias, bname)) + if (alias && !purple_strequal(alias, bname)) nm_contact_set_display_name(contact, alias); purple_blist_remove_buddy(buddy); buddy = NULL; gname = purple_group_get_name(group); - if (strcmp(gname, NM_ROOT_FOLDER_NAME) == 0) { + if (purple_strequal(gname, NM_ROOT_FOLDER_NAME)) { gname = ""; } @@ -2608,7 +2608,7 @@ novell_remove_buddy(PurpleConnection *gc, PurpleBuddy *buddy, PurpleGroup *group user = (NMUser *) gc->proto_data; if (user && (dn = nm_lookup_dn(user, purple_buddy_get_name(buddy)))) { gname = purple_group_get_name(group); - if (strcmp(gname, NM_ROOT_FOLDER_NAME) == 0) { + if (purple_strequal(gname, NM_ROOT_FOLDER_NAME)) { gname = ""; } folder = nm_find_folder(user, gname); @@ -2690,7 +2690,7 @@ novell_alias_buddy(PurpleConnection * gc, const char *name, const char *alias) buddy = purple_find_buddy_in_group(user->client_data, name, group); balias = buddy ? purple_buddy_get_local_buddy_alias(buddy) : NULL; - if (balias && strcmp(balias, alias)) + if (balias && !purple_strequal(balias, alias)) purple_blist_alias_buddy(buddy, alias); } @@ -2725,7 +2725,7 @@ novell_group_buddy(PurpleConnection * gc, if (user && (dn = nm_lookup_dn(user, name))) { /* Find the old folder */ - if (strcmp(old_group_name, NM_ROOT_FOLDER_NAME) == 0) { + if (purple_strequal(old_group_name, NM_ROOT_FOLDER_NAME)) { old_folder = nm_get_root_folder(user); if (nm_folder_find_contact(old_folder, dn) == NULL) old_folder = nm_find_folder(user, old_group_name); @@ -2738,7 +2738,7 @@ novell_group_buddy(PurpleConnection * gc, /* Find the new folder */ new_folder = nm_find_folder(user, new_group_name); if (new_folder == NULL) { - if (strcmp(new_group_name, NM_ROOT_FOLDER_NAME) == 0) + if (purple_strequal(new_group_name, NM_ROOT_FOLDER_NAME)) new_folder = nm_get_root_folder(user); } @@ -2791,7 +2791,7 @@ novell_rename_group(PurpleConnection * gc, const char *old_name, return; } - if (strcmp(old_name, NM_ROOT_FOLDER_NAME) == 0) { + if (purple_strequal(old_name, NM_ROOT_FOLDER_NAME)) { /* Can't rename the root folder ... need to revisit this */ return; } @@ -2882,7 +2882,7 @@ novell_set_idle(PurpleConnection * gc, int time) id = purple_status_get_id(status); /* Only go idle if active status is available */ - if (!strcmp(id, NOVELL_STATUS_TYPE_AVAILABLE)) { + if (purple_strequal(id, NOVELL_STATUS_TYPE_AVAILABLE)) { if (time > 0) { rc = nm_send_set_status(user, NM_STATUS_AWAY_IDLE, NULL, NULL, NULL, NULL); } else { diff --git a/libpurple/protocols/null/nullprpl.c b/libpurple/protocols/null/nullprpl.c index 1fdb0e4fb1..e2d8662f80 100644 --- a/libpurple/protocols/null/nullprpl.c +++ b/libpurple/protocols/null/nullprpl.c @@ -113,7 +113,7 @@ static void call_if_nullprpl(gpointer data, gpointer userdata) { PurpleConnection *gc = (PurpleConnection *)(data); GcFuncData *gcfdata = (GcFuncData *)userdata; - if (!strcmp(gc->account->protocol_id, NULLPRPL_ID)) + if (purple_strequal(gc->account->protocol_id, NULLPRPL_ID)) gcfdata->fn(gcfdata->from, gc, gcfdata->userdata); } @@ -168,9 +168,9 @@ static void discover_status(PurpleConnection *from, PurpleConnection *to, const char *status_id = purple_status_get_id(status); const char *message = purple_status_get_attr_string(status, "message"); - if (!strcmp(status_id, NULL_STATUS_ONLINE) || - !strcmp(status_id, NULL_STATUS_AWAY) || - !strcmp(status_id, NULL_STATUS_OFFLINE)) { + if (purple_strequal(status_id, NULL_STATUS_ONLINE) || + purple_strequal(status_id, NULL_STATUS_AWAY) || + purple_strequal(status_id, NULL_STATUS_OFFLINE)) { purple_debug_info("nullprpl", "%s sees that %s is %s: %s\n", from_username, to_username, status_id, message); purple_prpl_got_user_status(from->account, to_username, status_id, @@ -951,8 +951,7 @@ static void nullprpl_set_chat_topic(PurpleConnection *gc, int id, gc->account->username, conv->name, topic); last_topic = purple_conv_chat_get_topic(chat); - if ((!topic && !last_topic) || - (topic && last_topic && !strcmp(topic, last_topic))) + if (purple_strequal(topic, last_topic)) return; /* topic is unchanged, this is a noop */ foreach_gc_in_chat(set_chat_topic_fn, gc, id, (gpointer)topic); diff --git a/libpurple/protocols/oscar/clientlogin.c b/libpurple/protocols/oscar/clientlogin.c index 6ebbfec75b..549fb69b80 100644 --- a/libpurple/protocols/oscar/clientlogin.c +++ b/libpurple/protocols/oscar/clientlogin.c @@ -84,17 +84,19 @@ static gchar *generate_error_message(xmlnode *resp, const char *url) { xmlnode *text; xmlnode *status_code_node; - gchar *status_code; gboolean have_error_code = TRUE; gchar *err = NULL; gchar *details = NULL; status_code_node = xmlnode_get_child(resp, "statusCode"); if (status_code_node) { + gchar *status_code; + /* We can get 200 OK here if the server omitted something we think it shouldn't have (see #12783). * No point in showing the "Ok" string to the user. */ - if ((status_code = xmlnode_get_data_unescaped(status_code_node)) && strcmp(status_code, "200") == 0) { + status_code = xmlnode_get_data_unescaped(status_code_node); + if (purple_strequal(status_code, "200")) { have_error_code = FALSE; } } @@ -258,12 +260,12 @@ static gboolean parse_start_oscar_session_response(PurpleConnection *gc, const g return FALSE; } - if (strcmp(encryption_type, OSCAR_NO_ENCRYPTION) != 0) { + if (!purple_strequal(encryption_type, OSCAR_NO_ENCRYPTION)) { tls_node = xmlnode_get_child(data_node, "tlsCertName"); if (tls_node != NULL) { *tls_certname = xmlnode_get_data_unescaped(tls_node); } else { - if (strcmp(encryption_type, OSCAR_OPPORTUNISTIC_ENCRYPTION) == 0) { + if (purple_strequal(encryption_type, OSCAR_OPPORTUNISTIC_ENCRYPTION)) { purple_debug_warning("oscar", "We haven't received a tlsCertName to use. We will not do SSL to BOS.\n"); } else { purple_debug_error("oscar", "startOSCARSession was missing tlsCertName: %s\n", response); @@ -365,7 +367,7 @@ static void send_start_oscar_session(OscarData *od, const char *token, const cha od->icq ? ICQ_DEFAULT_DIST_ID : AIM_DEFAULT_DIST_ID), get_client_key(od), hosttime, - strcmp(encryption_type, OSCAR_NO_ENCRYPTION) != 0 ? 1 : 0); + !purple_strequal(encryption_type, OSCAR_NO_ENCRYPTION)); signature = generate_signature("GET", get_start_oscar_session_url(od), query_string, session_key); url = g_strdup_printf("%s?%s&sig_sha256=%s", get_start_oscar_session_url(od), @@ -453,7 +455,7 @@ static gboolean parse_client_login_response(PurpleConnection *gc, const gchar *r } /* Make sure the status code was 200 */ - if (strcmp(tmp, "200") != 0) + if (!purple_strequal(tmp, "200")) { int status_code, status_detail_code = 0; diff --git a/libpurple/protocols/oscar/family_icbm.c b/libpurple/protocols/oscar/family_icbm.c index 55800e05a1..8f95cce7a1 100644 --- a/libpurple/protocols/oscar/family_icbm.c +++ b/libpurple/protocols/oscar/family_icbm.c @@ -2037,7 +2037,7 @@ int icq_relay_xstatus(OscarData *od, const char *sn, const guchar *cookie) if (!account) return -EINVAL; - /* if (!strcmp(account->username, sn)) + /* if (purple_strequal(account->username, sn)) icq_im_xstatus_request(od, sn); */ status = purple_presence_get_active_status(account->presence); diff --git a/libpurple/protocols/oscar/family_locate.c b/libpurple/protocols/oscar/family_locate.c index 00bde7ac70..66b1cb7364 100644 --- a/libpurple/protocols/oscar/family_locate.c +++ b/libpurple/protocols/oscar/family_locate.c @@ -1081,7 +1081,7 @@ aim_info_extract(OscarData *od, ByteStream *bs, aim_userinfo_t *outinfo) * with no mood icon. */ if (*icqmood) { for (i = 0; icqmoods[i].icqmood; i++) { - if (!strcmp(icqmood, icqmoods[i].icqmood)) { + if (purple_strequal(icqmood, icqmoods[i].icqmood)) { mood = icqmoods[i].mood; break; /* should only match once... */ } @@ -1522,7 +1522,7 @@ icq_get_custom_icon_description(const char *mood) /* We check that description is not NULL to exclude * duplicates, like the typing duplicate. */ if (icq_purple_moods[i].description && - !strcmp(mood, icq_custom_icons[i].mood)) { + purple_strequal(mood, icq_custom_icons[i].mood)) { return icq_purple_moods[i].description; } } @@ -1542,7 +1542,7 @@ icq_get_custom_icon_data(const char *mood) /* We check that description is not NULL to exclude * duplicates, like the typing duplicate. */ if (icq_purple_moods[i].description && - !strcmp(mood, icq_custom_icons[i].mood)) { + purple_strequal(mood, icq_custom_icons[i].mood)) { return (guint8 *)icq_custom_icons[i].data; } } diff --git a/libpurple/protocols/oscar/oscar.c b/libpurple/protocols/oscar/oscar.c index f41871b55c..6c11b01451 100644 --- a/libpurple/protocols/oscar/oscar.c +++ b/libpurple/protocols/oscar/oscar.c @@ -580,7 +580,7 @@ idle_reporting_pref_cb(const char *name, PurplePrefType type, gc = data; od = purple_connection_get_protocol_data(gc); - report_idle = strcmp((const char *)value, "none") != 0; + report_idle = !purple_strequal((const char *)value, "none"); presence = aim_ssi_getpresence(od->ssi.local); if (report_idle) @@ -745,7 +745,7 @@ oscar_login(PurpleAccount *account) } gc->flags |= PURPLE_CONNECTION_HTML; - if (g_str_equal(purple_account_get_protocol_id(account), "prpl-icq")) { + if (purple_strequal(purple_account_get_protocol_id(account), "prpl-icq")) { od->icq = TRUE; } else { gc->flags |= PURPLE_CONNECTION_AUTO_RESP; @@ -753,21 +753,21 @@ oscar_login(PurpleAccount *account) /* Set this flag based on the protocol_id rather than the username, because that is what's tied to the get_moods prpl callback. */ - if (g_str_equal(purple_account_get_protocol_id(account), "prpl-icq")) + if (purple_strequal(purple_account_get_protocol_id(account), "prpl-icq")) gc->flags |= PURPLE_CONNECTION_SUPPORT_MOODS; od->default_port = purple_account_get_int(account, "port", OSCAR_DEFAULT_LOGIN_PORT); login_type = purple_account_get_string(account, "login_type", OSCAR_DEFAULT_LOGIN); encryption_type = purple_account_get_string(account, "encryption", OSCAR_DEFAULT_ENCRYPTION); - if (!purple_ssl_is_supported() && strcmp(encryption_type, OSCAR_REQUIRE_ENCRYPTION) == 0) { + if (!purple_ssl_is_supported() && purple_strequal(encryption_type, OSCAR_REQUIRE_ENCRYPTION)) { purple_connection_error_reason( gc, PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT, _("You required encryption in your account settings, but encryption is not supported by your system.")); return; } - od->use_ssl = purple_ssl_is_supported() && strcmp(encryption_type, OSCAR_NO_ENCRYPTION) != 0; + od->use_ssl = purple_ssl_is_supported() && !purple_strequal(encryption_type, OSCAR_NO_ENCRYPTION); /* Connect to core Purple signals */ purple_prefs_connect_callback(gc, "/purple/away/idle_reporting", idle_reporting_pref_cb, gc); @@ -1554,7 +1554,7 @@ static int purple_parse_oncoming(OscarData *od, FlapConnection *conn, FlapFrame if (b != NULL) saved_b16 = purple_buddy_icons_get_checksum_for_user(b); - if (!b16 || !saved_b16 || strcmp(b16, saved_b16)) { + if (!b16 || !saved_b16 || !purple_strequal(b16, saved_b16)) { /* Invalidate the old icon for this user */ purple_buddy_icons_set_for_user(account, info->bn, NULL, 0, NULL); @@ -2129,7 +2129,7 @@ incomingim_chan4(OscarData *od, FlapConnection *conn, aim_userinfo_t *userinfo, smsmsg = byte_stream_getstr(&qbs, smslen); /* Check if this is an SMS being sent from server */ - if ((smstype == 0) && (!strcmp(tagstr, "ICQSMS")) && (smsmsg != NULL)) + if ((smstype == 0) && (purple_strequal(tagstr, "ICQSMS")) && (smsmsg != NULL)) { xmlroot = xmlnode_from_str(smsmsg, -1); if (xmlroot != NULL) @@ -2939,7 +2939,7 @@ static int purple_bosrights(OscarData *od, FlapConnection *conn, FlapFrame *fr, serv_set_info(gc, purple_account_get_user_info(account)); username = purple_account_get_username(account); - if (!od->icq && strcmp(username, purple_connection_get_display_name(gc)) != 0) { + if (!od->icq && !purple_strequal(username, purple_connection_get_display_name(gc))) { /* * Format the username for AIM accounts if it's different * than what's currently set. @@ -3511,31 +3511,31 @@ oscar_get_extended_status(PurpleConnection *gc) if (purple_account_get_bool(account, "web_aware", OSCAR_DEFAULT_WEB_AWARE)) data |= AIM_ICQ_STATE_WEBAWARE; - if (!strcmp(status_id, OSCAR_STATUS_ID_AVAILABLE)) + if (purple_strequal(status_id, OSCAR_STATUS_ID_AVAILABLE)) data |= AIM_ICQ_STATE_NORMAL; - else if (!strcmp(status_id, OSCAR_STATUS_ID_AWAY)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_AWAY)) data |= AIM_ICQ_STATE_AWAY; - else if (!strcmp(status_id, OSCAR_STATUS_ID_DND)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_DND)) data |= AIM_ICQ_STATE_AWAY | AIM_ICQ_STATE_DND | AIM_ICQ_STATE_BUSY; - else if (!strcmp(status_id, OSCAR_STATUS_ID_NA)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_NA)) data |= AIM_ICQ_STATE_OUT | AIM_ICQ_STATE_AWAY; - else if (!strcmp(status_id, OSCAR_STATUS_ID_OCCUPIED)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_OCCUPIED)) data |= AIM_ICQ_STATE_AWAY | AIM_ICQ_STATE_BUSY; - else if (!strcmp(status_id, OSCAR_STATUS_ID_FREE4CHAT)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_FREE4CHAT)) data |= AIM_ICQ_STATE_CHAT; - else if (!strcmp(status_id, OSCAR_STATUS_ID_INVISIBLE)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_INVISIBLE)) data |= AIM_ICQ_STATE_INVISIBLE; - else if (!strcmp(status_id, OSCAR_STATUS_ID_EVIL)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_EVIL)) data |= AIM_ICQ_STATE_EVIL; - else if (!strcmp(status_id, OSCAR_STATUS_ID_DEPRESSION)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_DEPRESSION)) data |= AIM_ICQ_STATE_DEPRESSION; - else if (!strcmp(status_id, OSCAR_STATUS_ID_ATWORK)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_ATWORK)) data |= AIM_ICQ_STATE_ATWORK; - else if (!strcmp(status_id, OSCAR_STATUS_ID_ATHOME)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_ATHOME)) data |= AIM_ICQ_STATE_ATHOME; - else if (!strcmp(status_id, OSCAR_STATUS_ID_LUNCH)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_LUNCH)) data |= AIM_ICQ_STATE_LUNCH; - else if (!strcmp(status_id, OSCAR_STATUS_ID_CUSTOM)) + else if (purple_strequal(status_id, OSCAR_STATUS_ID_CUSTOM)) data |= AIM_ICQ_STATE_OUT | AIM_ICQ_STATE_AWAY; return data; @@ -3782,7 +3782,7 @@ void oscar_remove_buddy(PurpleConnection *gc, PurpleBuddy *buddy, PurpleGroup *g void oscar_move_buddy(PurpleConnection *gc, const char *name, const char *old_group, const char *new_group) { OscarData *od = purple_connection_get_protocol_data(gc); - if (od->ssi.received_data && strcmp(old_group, new_group)) { + if (od->ssi.received_data && !purple_strequal(old_group, new_group)) { purple_debug_info("oscar", "ssi: moving buddy %s from group %s to group %s\n", name, old_group, new_group); aim_ssi_movebuddy(od, old_group, new_group, name); @@ -4018,7 +4018,7 @@ static int purple_ssi_parselist(OscarData *od, FlapConnection *conn, FlapFrame * gboolean report_idle; idle_reporting_pref = purple_prefs_get_string("/purple/away/idle_reporting"); - report_idle = strcmp(idle_reporting_pref, "none") != 0; + report_idle = !purple_strequal(idle_reporting_pref, "none"); if (report_idle) aim_ssi_setpresence(od, tmp | AIM_SSI_PRESENCE_FLAG_SHOWIDLE); @@ -5686,7 +5686,7 @@ static PurpleAccount *find_acct(const char *prpl, const char *acct_id) } else { /* Otherwise find an active account for the protocol */ GList *l = purple_accounts_get_all(); while (l) { - if (!strcmp(prpl, purple_account_get_protocol_id(l->data)) + if (purple_strequal(prpl, purple_account_get_protocol_id(l->data)) && purple_account_is_connected(l->data)) { acct = l->data; break; @@ -5847,7 +5847,7 @@ void oscar_init(PurplePlugin *plugin, gboolean is_icq) OSCAR_DEFAULT_ALWAYS_USE_RV_PROXY); prpl_info->protocol_options = g_list_append(prpl_info->protocol_options, option); - if (g_str_equal(purple_plugin_get_id(plugin), "prpl-aim")) { + if (purple_strequal(purple_plugin_get_id(plugin), "prpl-aim")) { option = purple_account_option_bool_new(_("Allow multiple simultaneous logins"), "allow_multiple_logins", OSCAR_DEFAULT_ALLOW_MULTIPLE_LOGINS); prpl_info->protocol_options = g_list_append(prpl_info->protocol_options, option); diff --git a/libpurple/protocols/oscar/peer.c b/libpurple/protocols/oscar/peer.c index 15db99d0cc..a791425055 100644 --- a/libpurple/protocols/oscar/peer.c +++ b/libpurple/protocols/oscar/peer.c @@ -810,7 +810,7 @@ peer_connection_trynext(PeerConnection *conn) peer_connection_verified_established_cb, conn); if ((conn->verifiedip == NULL) || - strcmp(conn->verifiedip, conn->clientip)) + !purple_strequal(conn->verifiedip, conn->clientip)) { conn->client_connect_data = purple_proxy_connect(NULL, account, conn->clientip, conn->port, diff --git a/libpurple/protocols/oscar/rxhandlers.c b/libpurple/protocols/oscar/rxhandlers.c index 265648cad9..f7a28f1823 100644 --- a/libpurple/protocols/oscar/rxhandlers.c +++ b/libpurple/protocols/oscar/rxhandlers.c @@ -38,7 +38,7 @@ aim_module_t *aim__findmodule(OscarData *od, const char *name) aim_module_t *cur; for (cur = (aim_module_t *)od->modlistv; cur; cur = cur->next) { - if (strcmp(name, cur->name) == 0) + if (purple_strequal(name, cur->name)) return cur; } diff --git a/libpurple/protocols/oscar/userinfo.c b/libpurple/protocols/oscar/userinfo.c index fad89dd763..8659861fd0 100644 --- a/libpurple/protocols/oscar/userinfo.c +++ b/libpurple/protocols/oscar/userinfo.c @@ -252,7 +252,7 @@ oscar_user_info_append_status(PurpleConnection *gc, PurpleNotifyUserInfo *user_i /* Append the status name for online ICQ statuses, away AIM statuses, and for all buddies with no message. * If the status name and the message are the same, only show one. */ const char *status_name = purple_status_get_name(status); - if (status_name && message && !strcmp(status_name, message)) + if (status_name && message && purple_strequal(status_name, message)) status_name = NULL; tmp = g_strdup_printf("%s%s%s", @@ -433,7 +433,7 @@ oscar_user_info_display_icq(OscarData *od, struct aim_icq_info *info) tm->tm_mon = (int)info->birthmonth - 1; tm->tm_year = (int)info->birthyear - 1900; - /* Ignore dst setting of today to avoid timezone shift between + /* Ignore dst setting of today to avoid timezone shift between * dates in summer and winter time. */ tm->tm_isdst = -1; diff --git a/libpurple/protocols/sametime/sametime.c b/libpurple/protocols/sametime/sametime.c index aa252d89ff..b7cd53b140 100644 --- a/libpurple/protocols/sametime/sametime.c +++ b/libpurple/protocols/sametime/sametime.c @@ -692,7 +692,7 @@ static void blist_export(PurpleConnection *gc, struct mwSametimeList *stlist) { /* if the group has an owner and we're not it, skip it */ owner = purple_blist_node_get_string(gn, GROUP_KEY_OWNER); - if(owner && strcmp(owner, purple_account_get_username(acct))) + if(owner && !purple_strequal(owner, purple_account_get_username(acct))) continue; /* the group's actual name may be different from the purple group's @@ -945,8 +945,8 @@ static PurpleGroup *group_ensure(PurpleConnection *gc, DEBUG_INFO("found group named %s, owned by %s\n", NSTR(n), NSTR(o)); - if(n && !strcmp(n, name)) { - if(!o || !strcmp(o, owner)) { + if(n && purple_strequal(n, name)) { + if(!o || purple_strequal(o, owner)) { DEBUG_INFO("that'll work\n"); group = (PurpleGroup *) gn; break; @@ -1177,7 +1177,7 @@ static void blist_sync(PurpleConnection *gc, struct mwSametimeList *stlist) { /* dynamic group belonging to this account. don't prune contents */ owner = purple_blist_node_get_string(gn, GROUP_KEY_OWNER); - if(owner && !strcmp(owner, acct_n)) + if(owner && purple_strequal(owner, acct_n)) continue; /* we actually are synching by this key as opposed to the group @@ -1209,7 +1209,7 @@ static void blist_sync(PurpleConnection *gc, struct mwSametimeList *stlist) { gboolean del = TRUE; owner = purple_blist_node_get_string(gn, GROUP_KEY_OWNER); - if(owner && strcmp(owner, acct_n)) { + if(owner && !purple_strequal(owner, acct_n)) { /* it's a specialty group belonging to another account with some of our members in it, so don't fully delete it */ del = FALSE; @@ -1361,7 +1361,7 @@ static void blist_node_menu_cb(PurpleBlistNode *node, /* check if it's a NAB group for this account */ owner = purple_blist_node_get_string(node, GROUP_KEY_OWNER); - if(owner && !strcmp(owner, purple_account_get_username(acct))) { + if(owner && purple_strequal(owner, purple_account_get_username(acct))) { act = purple_menu_action_new(_("Get Notes Address Book Info"), PURPLE_CALLBACK(blist_menu_nab), pd, NULL); *menu = g_list_append(*menu, act); @@ -1433,7 +1433,7 @@ static void services_starting(struct mwPurplePluginData *pd) { /* if the group is ownerless, or has an owner and we're not it, skip it */ owner = purple_blist_node_get_string(l, GROUP_KEY_OWNER); - if(!owner || strcmp(owner, purple_account_get_username(acct))) + if(!owner || !purple_strequal(owner, purple_account_get_username(acct))) continue; gt = purple_blist_node_get_int(l, GROUP_KEY_TYPE); @@ -1473,7 +1473,7 @@ static void session_loginRedirect(struct mwSession *session, MW_PLUGIN_DEFAULT_HOST); if(purple_account_get_bool(account, MW_KEY_FORCE, FALSE) || - !host || (! strcmp(current_host, host)) || + !host || purple_strequal(current_host, host) || (purple_proxy_connect(gc, account, host, port, connect_cb, pd) == NULL)) { /* if we're configured to force logins, or if we're being @@ -3807,16 +3807,16 @@ static char *im_mime_img_content_type(PurpleStoredImage *img) { if(! ct) { ct = "image"; - } else if(! strcmp(".png", ct)) { + } else if(purple_strequal(".png", ct)) { ct = "image/png"; - } else if(! strcmp(".jpg", ct)) { + } else if(purple_strequal(".jpg", ct)) { ct = "image/jpeg"; - } else if(! strcmp(".jpeg", ct)) { + } else if(purple_strequal(".jpeg", ct)) { ct = "image/jpeg"; - } else if(! strcmp(".gif", ct)) { + } else if(purple_strequal(".gif", ct)) { ct = "image/gif"; } else { @@ -4201,13 +4201,13 @@ static void mw_prpl_set_status(PurpleAccount *acct, PurpleStatus *status) { mwUserStatus_clone(&stat, mwSession_getUserStatus(session)); /* determine the state */ - if(! strcmp(state, MW_STATE_ACTIVE)) { + if(purple_strequal(state, MW_STATE_ACTIVE)) { stat.status = mwStatus_ACTIVE; - } else if(! strcmp(state, MW_STATE_AWAY)) { + } else if(purple_strequal(state, MW_STATE_AWAY)) { stat.status = mwStatus_AWAY; - } else if(! strcmp(state, MW_STATE_BUSY)) { + } else if(purple_strequal(state, MW_STATE_BUSY)) { stat.status = mwStatus_BUSY; } @@ -4374,7 +4374,7 @@ static void add_buddy_resolved(struct mwServiceResolve *srvc, struct mwResolveMatch *match = res->matches->data; /* only one? that might be the right one! */ - if(strcmp(res->name, match->id)) { + if(!purple_strequal(res->name, match->id)) { /* uh oh, the single result isn't identical to the search term, better safe then sorry, so let's make sure it's who the user meant to add */ @@ -4661,7 +4661,7 @@ static struct mwConference *conf_find(struct mwServiceConference *srvc, ll = mwServiceConference_getConferences(srvc); for(l = ll; l; l = l->next) { struct mwConference *c = l->data; - if(! strcmp(name, mwConference_getName(c))) { + if(purple_strequal(name, mwConference_getName(c))) { conf = c; break; } diff --git a/libpurple/protocols/silc/buddy.c b/libpurple/protocols/silc/buddy.c index 687cd3f6cd..dee50ebddb 100644 --- a/libpurple/protocols/silc/buddy.c +++ b/libpurple/protocols/silc/buddy.c @@ -890,13 +890,13 @@ silcpurple_add_buddy_save(SilcBool success, void *context) unsigned char *verifyd; SilcUInt32 verify_len; - if (!strcmp(serverpk.type, "silc-rsa")) + if (purple_strequal(serverpk.type, "silc-rsa")) type = SILC_PKCS_SILC; - else if (!strcmp(serverpk.type, "ssh-rsa")) + else if (purple_strequal(serverpk.type, "ssh-rsa")) type = SILC_PKCS_SSH2; - else if (!strcmp(serverpk.type, "x509v3-sign-rsa")) + else if (purple_strequal(serverpk.type, "x509v3-sign-rsa")) type = SILC_PKCS_X509V3; - else if (!strcmp(serverpk.type, "pgp-sign-rsa")) + else if (purple_strequal(serverpk.type, "pgp-sign-rsa")) type = SILC_PKCS_OPENPGP; if (silc_pkcs_public_key_alloc(type, serverpk.data, @@ -976,10 +976,10 @@ silcpurple_add_buddy_save(SilcBool success, void *context) if (usericon) { const char *type = silc_mime_get_field(usericon, "Content-Type"); if (type && - (!strcmp(type, "image/jpeg") || - !strcmp(type, "image/gif") || - !strcmp(type, "image/bmp") || - !strcmp(type, "image/png"))) { + (purple_strequal(type, "image/jpeg") || + purple_strequal(type, "image/gif") || + purple_strequal(type, "image/bmp") || + purple_strequal(type, "image/png"))) { const unsigned char *data; SilcUInt32 data_len; data = silc_mime_get_data(usericon, &data_len); @@ -1712,11 +1712,11 @@ void silcpurple_buddy_set_icon(PurpleConnection *gc, PurpleStoredImage *img) return; t = purple_imgstore_get_extension(img); - if (!t || !strcmp(t, "icon")) { + if (!t || purple_strequal(t, "icon")) { silc_mime_free(mime); return; } - if (!strcmp(t, "jpg")) + if (purple_strequal(t, "jpg")) t = "jpeg"; g_snprintf(type, sizeof(type), "image/%s", t); silc_mime_add_field(mime, "Content-Type", type); diff --git a/libpurple/protocols/silc/chat.c b/libpurple/protocols/silc/chat.c index f46d4b8aeb..b76f848bcf 100644 --- a/libpurple/protocols/silc/chat.c +++ b/libpurple/protocols/silc/chat.c @@ -372,7 +372,7 @@ silcpurple_chat_chauth_ok(SilcPurpleChauth sgc, PurpleRequestFields *fields) set = 0; else if (val && !curpass) set = 1; - else if (val && curpass && strcmp(val, curpass)) + else if (val && curpass && !purple_strequal(val, curpass)) set = 1; else set = -1; diff --git a/libpurple/protocols/silc/ops.c b/libpurple/protocols/silc/ops.c index 2e018eafea..09f0a65430 100644 --- a/libpurple/protocols/silc/ops.c +++ b/libpurple/protocols/silc/ops.c @@ -65,7 +65,7 @@ void silc_say(SilcClient client, SilcClientConnection conn, purple_debug_error("silc", "silc_say error: %s\n", tmp); - if (!strcmp(tmp, "Authentication failed")) + if (purple_strequal(tmp, "Authentication failed")) reason = PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED; if (client != NULL) @@ -122,7 +122,7 @@ silcpurple_mime_message(SilcClient client, SilcClientConnection conn, const char *mtype; SilcDList parts = silc_mime_get_multiparts(mime, &mtype); - if (!strcmp(mtype, "mixed")) { + if (purple_strequal(mtype, "mixed")) { /* Contains multiple messages */ silc_dlist_start(parts); while ((p = silc_dlist_get(parts)) != SILC_LIST_END) { @@ -132,7 +132,7 @@ silcpurple_mime_message(SilcClient client, SilcClientConnection conn, } } - if (!strcmp(mtype, "alternative")) { + if (purple_strequal(mtype, "alternative")) { /* Same message in alternative formats. Kopete sends these. Go in order from last to first. */ silc_dlist_end(parts); @@ -593,7 +593,7 @@ silc_notify(SilcClient client, SilcClientConnection conn, tmp = va_arg(va, char *); /* Old nick */ name = va_arg(va, char *); /* New nick */ - if (!strcmp(tmp, name)) + if (purple_strequal(tmp, name)) break; /* Change nick on all channels */ @@ -955,7 +955,7 @@ silc_command(SilcClient client, SilcClientConnection conn, switch (command) { case SILC_COMMAND_CMODE: - if (argc == 3 && !strcmp((char *)argv[2], "+C")) + if (argc == 3 && purple_strequal((char *)argv[2], "+C")) sg->chpk = TRUE; else sg->chpk = FALSE; @@ -1446,7 +1446,7 @@ silc_command_reply(SilcClient client, SilcClientConnection conn, if (!convo) continue; oldnick = purple_conv_chat_get_nick(PURPLE_CONV_CHAT(convo)); - if (strcmp(oldnick, purple_normalize(purple_conversation_get_account(convo), newnick))) { + if (!purple_strequal(oldnick, purple_normalize(purple_conversation_get_account(convo), newnick))) { purple_conv_chat_rename_user(PURPLE_CONV_CHAT(convo), oldnick, newnick); purple_conv_chat_set_nick(PURPLE_CONV_CHAT(convo), newnick); diff --git a/libpurple/protocols/silc/silc.c b/libpurple/protocols/silc/silc.c index 3084d278aa..bbd892a67a 100644 --- a/libpurple/protocols/silc/silc.c +++ b/libpurple/protocols/silc/silc.c @@ -98,15 +98,15 @@ silcpurple_set_status(PurpleAccount *account, PurpleStatus *status) SILC_UMODE_INDISPOSED | SILC_UMODE_PAGE); - if (!strcmp(state, "hyper")) + if (purple_strequal(state, "hyper")) mode |= SILC_UMODE_HYPER; - else if (!strcmp(state, "away")) + else if (purple_strequal(state, "away")) mode |= SILC_UMODE_GONE; - else if (!strcmp(state, "busy")) + else if (purple_strequal(state, "busy")) mode |= SILC_UMODE_BUSY; - else if (!strcmp(state, "indisposed")) + else if (purple_strequal(state, "indisposed")) mode |= SILC_UMODE_INDISPOSED; - else if (!strcmp(state, "page")) + else if (purple_strequal(state, "page")) mode |= SILC_UMODE_PAGE; /* Send UMODE */ @@ -595,13 +595,13 @@ silcpurple_login(PurpleAccount *account) cipher = purple_account_get_string(account, "cipher", SILC_DEFAULT_CIPHER); for (i = 0; silc_default_ciphers[i].name; i++) - if (!strcmp(silc_default_ciphers[i].name, cipher)) { + if (purple_strequal(silc_default_ciphers[i].name, cipher)) { silc_cipher_register(&(silc_default_ciphers[i])); break; } hmac = purple_account_get_string(account, "hmac", SILC_DEFAULT_HMAC); for (i = 0; silc_default_hmacs[i].name; i++) - if (!strcmp(silc_default_hmacs[i].name, hmac)) { + if (purple_strequal(silc_default_hmacs[i].name, hmac)) { silc_hmac_register(&(silc_default_hmacs[i])); break; } @@ -1146,7 +1146,7 @@ silcpurple_create_keypair_cb(PurpleConnection *gc, PurpleRequestFields *fields) else pass2 = ""; - if (strcmp(pass1, pass2)) { + if (!purple_strequal(pass1, pass2)) { purple_notify_error( gc, _("Create New SILC Key Pair"), _("Passphrases do not match"), NULL); return; diff --git a/libpurple/protocols/silc10/buddy.c b/libpurple/protocols/silc10/buddy.c index aaedee6088..2e269aa2de 100644 --- a/libpurple/protocols/silc10/buddy.c +++ b/libpurple/protocols/silc10/buddy.c @@ -891,7 +891,7 @@ silcpurple_add_buddy_save(bool success, void *context) silc_free(verifyd); } - if (serversign.data && !strcmp(serverpk.type, "silc-rsa")) { + if (serversign.data && purple_strequal(serverpk.type, "silc-rsa")) { SilcPublicKey public_key; SilcPKCS pkcs; unsigned char *verifyd; @@ -983,10 +983,10 @@ silcpurple_add_buddy_save(bool success, void *context) usericon.mime_len); if (m) { const char *type = silc_mime_get_field(m, "Content-Type"); - if (!strcmp(type, "image/jpeg") || - !strcmp(type, "image/gif") || - !strcmp(type, "image/bmp") || - !strcmp(type, "image/png")) { + if (purple_strequal(type, "image/jpeg") || + purple_strequal(type, "image/gif") || + purple_strequal(type, "image/bmp") || + purple_strequal(type, "image/png")) { const unsigned char *data; SilcUInt32 data_len; data = silc_mime_get_data(m, &data_len); @@ -1727,11 +1727,11 @@ void silcpurple_buddy_set_icon(PurpleConnection *gc, PurpleStoredImage *img) return; t = purple_imgstore_get_extension(img); - if (!t || !strcmp(t, "icon")) { + if (!t || purple_strequal(t, "icon")) { silc_mime_free(mime); return; } - if (!strcmp(t, "jpg")) + if (purple_strequal(t, "jpg")) t = "jpeg"; g_snprintf(type, sizeof(type), "image/%s", t); silc_mime_add_field(mime, "Content-Type", type); diff --git a/libpurple/protocols/silc10/chat.c b/libpurple/protocols/silc10/chat.c index cc6f509604..59a9ed8fbd 100644 --- a/libpurple/protocols/silc10/chat.c +++ b/libpurple/protocols/silc10/chat.c @@ -350,7 +350,7 @@ silcpurple_chat_chauth_ok(SilcPurpleChauth sgc, PurpleRequestFields *fields) set = 0; else if (val && !curpass) set = 1; - else if (val && curpass && strcmp(val, curpass)) + else if (val && curpass && !purple_strequal(val, curpass)) set = 1; else set = -1; diff --git a/libpurple/protocols/silc10/ops.c b/libpurple/protocols/silc10/ops.c index 6095c49b18..3a2578c868 100644 --- a/libpurple/protocols/silc10/ops.c +++ b/libpurple/protocols/silc10/ops.c @@ -94,7 +94,7 @@ silcpurple_mime_message(SilcClient client, SilcClientConnection conn, SilcDList parts = silc_mime_get_multiparts(mime, &mtype); /* Only "mixed" type supported */ - if (strcmp(mtype, "mixed")) + if (!purple_strequal(mtype, "mixed")) goto out; silc_dlist_start(parts); @@ -265,8 +265,8 @@ silc_channel_message(SilcClient client, SilcClientConnection conn, &data_len)) return; - if (!strcmp(type, "application/x-wb") && - !strcmp(enc, "binary") && + if (purple_strequal(type, "application/x-wb") && + purple_strequal(enc, "binary") && !purple_account_get_bool(sg->account, "block-wb", FALSE)) silcpurple_wb_receive_ch(client, conn, sender, channel, payload, flags, data, data_len); @@ -368,8 +368,8 @@ silc_private_message(SilcClient client, SilcClientConnection conn, &data_len)) return; - if (!strcmp(type, "application/x-wb") && - !strcmp(enc, "binary") && + if (purple_strequal(type, "application/x-wb") && + purple_strequal(enc, "binary") && !purple_account_get_bool(sg->account, "block-wb", FALSE)) silcpurple_wb_receive(client, conn, sender, payload, flags, data, data_len); @@ -588,7 +588,7 @@ silc_notify(SilcClient client, SilcClientConnection conn, client_entry = va_arg(va, SilcClientEntry); client_entry2 = va_arg(va, SilcClientEntry); - if (!strcmp(client_entry->nickname, client_entry2->nickname)) + if (purple_strequal(client_entry->nickname, client_entry2->nickname)) break; /* Change nick on all channels */ @@ -890,7 +890,7 @@ silc_notify(SilcClient client, SilcClientConnection conn, if (b->account != gc->account) continue; f = purple_blist_node_get_string(bnode, "public-key"); - if (f && !strcmp(f, buf)) + if (f && purple_strequal(f, buf)) goto cont; b = NULL; } @@ -976,7 +976,7 @@ silc_command(SilcClient client, SilcClientConnection conn, case SILC_COMMAND_CMODE: if (cmd_context->argc == 3 && - !strcmp((char *)cmd_context->argv[2], "+C")) + purple_strequal((char *)cmd_context->argv[2], "+C")) sg->chpk = TRUE; else sg->chpk = FALSE; @@ -1426,7 +1426,7 @@ silc_command_reply(SilcClient client, SilcClientConnection conn, if (!convo) continue; oldnick = purple_conv_chat_get_nick(PURPLE_CONV_CHAT(convo)); - if (strcmp(oldnick, purple_normalize(purple_conversation_get_account(convo), local_entry->nickname))) { + if (!purple_strequal(oldnick, purple_normalize(purple_conversation_get_account(convo), local_entry->nickname))) { purple_conv_chat_rename_user(PURPLE_CONV_CHAT(convo), oldnick, local_entry->nickname); purple_conv_chat_set_nick(PURPLE_CONV_CHAT(convo), local_entry->nickname); diff --git a/libpurple/protocols/silc10/silc.c b/libpurple/protocols/silc10/silc.c index e29c22ea45..43e7589a37 100644 --- a/libpurple/protocols/silc10/silc.c +++ b/libpurple/protocols/silc10/silc.c @@ -88,15 +88,15 @@ silcpurple_set_status(PurpleAccount *account, PurpleStatus *status) SILC_UMODE_INDISPOSED | SILC_UMODE_PAGE); - if (!strcmp(state, "hyper")) + if (purple_strequal(state, "hyper")) mode |= SILC_UMODE_HYPER; - else if (!strcmp(state, "away")) + else if (purple_strequal(state, "away")) mode |= SILC_UMODE_GONE; - else if (!strcmp(state, "busy")) + else if (purple_strequal(state, "busy")) mode |= SILC_UMODE_BUSY; - else if (!strcmp(state, "indisposed")) + else if (purple_strequal(state, "indisposed")) mode |= SILC_UMODE_INDISPOSED; - else if (!strcmp(state, "page")) + else if (purple_strequal(state, "page")) mode |= SILC_UMODE_PAGE; /* Send UMODE */ @@ -301,13 +301,13 @@ silcpurple_login(PurpleAccount *account) /* Register requested cipher and HMAC */ cipher = purple_account_get_string(account, "cipher", SILC_DEFAULT_CIPHER); for (i = 0; silc_default_ciphers[i].name; i++) - if (!strcmp(silc_default_ciphers[i].name, cipher)) { + if (purple_strequal(silc_default_ciphers[i].name, cipher)) { silc_cipher_register(&(silc_default_ciphers[i])); break; } hmac = purple_account_get_string(account, "hmac", SILC_DEFAULT_HMAC); for (i = 0; silc_default_hmacs[i].name; i++) - if (!strcmp(silc_default_hmacs[i].name, hmac)) { + if (purple_strequal(silc_default_hmacs[i].name, hmac)) { silc_hmac_register(&(silc_default_hmacs[i])); break; } @@ -844,7 +844,7 @@ silcpurple_create_keypair_cb(PurpleConnection *gc, PurpleRequestFields *fields) else pass2 = ""; - if (strcmp(pass1, pass2)) { + if (!purple_strequal(pass1, pass2)) { purple_notify_error( gc, _("Create New SILC Key Pair"), _("Passphrases do not match"), NULL); return; diff --git a/libpurple/protocols/simple/simple.c b/libpurple/protocols/simple/simple.c index 516679d6d5..2ee164656e 100644 --- a/libpurple/protocols/simple/simple.c +++ b/libpurple/protocols/simple/simple.c @@ -143,7 +143,7 @@ static struct simple_watcher *watcher_find(struct simple_account_data *sip, GSList *entry = sip->watcher; while(entry) { watcher = entry->data; - if(!strcmp(name, watcher->name)) return watcher; + if(purple_strequal(name, watcher->name)) return watcher; entry = entry->next; } return NULL; @@ -619,7 +619,7 @@ static struct transaction *transactions_find(struct simple_account_data *sip, st if (cseq) { while(transactions) { trans = transactions->data; - if(!strcmp(trans->cseq, cseq)) { + if(purple_strequal(trans->cseq, cseq)) { return trans; } transactions = transactions->next; @@ -642,7 +642,7 @@ static void send_sip_request(PurpleConnection *gc, const gchar *method, gchar *tag = NULL; char *buf; - if(!strcmp(method, "REGISTER")) { + if(purple_strequal(method, "REGISTER")) { if(sip->regcallid) { g_free(callid); callid = g_strdup(sip->regcallid); @@ -651,12 +651,12 @@ static void send_sip_request(PurpleConnection *gc, const gchar *method, } if(addheaders) addh = addheaders; - if(sip->registrar.type && !strcmp(method, "REGISTER")) { + if(sip->registrar.type && purple_strequal(method, "REGISTER")) { buf = auth_header(sip, &sip->registrar, method, url); auth = g_strdup_printf("Authorization: %s\r\n", buf); g_free(buf); purple_debug(PURPLE_DEBUG_MISC, "simple", "header %s", auth); - } else if(sip->proxy.type && strcmp(method, "REGISTER")) { + } else if(sip->proxy.type && !purple_strequal(method, "REGISTER")) { buf = auth_header(sip, &sip->proxy, method, url); auth = g_strdup_printf("Proxy-Authorization: %s\r\n", buf); g_free(buf); @@ -1174,9 +1174,9 @@ static gboolean dialog_match(struct sip_dialog *dialog, struct sipmsg *msg) theirtag = find_tag(fromhdr); if (ourtag && theirtag && - !strcmp(dialog->callid, callid) && - !strcmp(dialog->ourtag, ourtag) && - !strcmp(dialog->theirtag, theirtag)) + purple_strequal(dialog->callid, callid) && + purple_strequal(dialog->ourtag, ourtag) && + purple_strequal(dialog->theirtag, theirtag)) match = TRUE; g_free(ourtag); @@ -1508,13 +1508,13 @@ privend: static void process_input_message(struct simple_account_data *sip, struct sipmsg *msg) { gboolean found = FALSE; if(msg->response == 0) { /* request */ - if(!strcmp(msg->method, "MESSAGE")) { + if(purple_strequal(msg->method, "MESSAGE")) { process_incoming_message(sip, msg); found = TRUE; - } else if(!strcmp(msg->method, "NOTIFY")) { + } else if(purple_strequal(msg->method, "NOTIFY")) { process_incoming_notify(sip, msg); found = TRUE; - } else if(!strcmp(msg->method, "SUBSCRIBE")) { + } else if(purple_strequal(msg->method, "SUBSCRIBE")) { process_incoming_subscribe(sip, msg); found = TRUE; } else { @@ -1548,7 +1548,7 @@ static void process_input_message(struct simple_account_data *sip, struct sipmsg purple_debug_info("simple", "got trying response\n"); } else { sip->proxy.retries = 0; - if(!strcmp(trans->msg->method, "REGISTER")) { + if(purple_strequal(trans->msg->method, "REGISTER")) { /* This is encountered when a REGISTER request was ... */ diff --git a/libpurple/protocols/zephyr/ZAsyncLocate.c b/libpurple/protocols/zephyr/ZAsyncLocate.c index d46fd6666b..a8b6d2addb 100644 --- a/libpurple/protocols/zephyr/ZAsyncLocate.c +++ b/libpurple/protocols/zephyr/ZAsyncLocate.c @@ -9,6 +9,7 @@ */ #include "internal.h" +#include "util.h" Code_t ZRequestLocations(user, zald, kind, auth) const char *user; @@ -69,7 +70,7 @@ Code_t ZParseLocations(notice,zald,nlocs,user) /* non-matching protocol version numbers means the server is probably an older version--must punt */ - if (zald && strcmp(notice->z_version, zald->version)) + if (zald && !purple_strequal(notice->z_version, zald->version)) return(ZERR_VERS); if (notice->z_kind == SERVNAK) @@ -77,7 +78,7 @@ Code_t ZParseLocations(notice,zald,nlocs,user) /* flag ACKs as special */ if (notice->z_kind == SERVACK && - !strcmp(notice->z_opcode, LOCATE_LOCATE)) { + purple_strequal(notice->z_opcode, LOCATE_LOCATE)) { *nlocs = -1; return(ZERR_NONE); } @@ -133,7 +134,7 @@ Code_t ZParseLocations(notice,zald,nlocs,user) __locate_next = 0; *nlocs = __locate_num; if (user) { - size_t len; + size_t len; if (zald) { len = strlen(zald->user) + 1; if ((*user = (char *) malloc(len)) == NULL) diff --git a/libpurple/protocols/zephyr/ZLocations.c b/libpurple/protocols/zephyr/ZLocations.c index a61e63864a..66703975d6 100644 --- a/libpurple/protocols/zephyr/ZLocations.c +++ b/libpurple/protocols/zephyr/ZLocations.c @@ -10,6 +10,7 @@ */ #include "internal.h" +#include "util.h" #ifndef WIN32 #include <pwd.h> @@ -127,11 +128,11 @@ Code_t Z_SendLocation(class, opcode, auth, format) ZFreeNotice(&retnotice); return (ZERR_SERVNAK); } - if (!strcmp(retnotice.z_message, ZSRVACK_NOTSENT)) { + if (purple_strequal(retnotice.z_message, ZSRVACK_NOTSENT)) { ZFreeNotice(&retnotice); return (ZERR_AUTHFAIL); } - if (!strcmp(retnotice.z_message, ZSRVACK_FAIL)) { + if (purple_strequal(retnotice.z_message, ZSRVACK_FAIL)) { ZFreeNotice(&retnotice); return (ZERR_LOGINFAIL); } @@ -149,8 +150,8 @@ Code_t Z_SendLocation(class, opcode, auth, format) return (ZERR_INTERNAL); } - if (strcmp(retnotice.z_message, ZSRVACK_SENT) && - strcmp(retnotice.z_message, ZSRVACK_NOTSENT)) { + if (!purple_strequal(retnotice.z_message, ZSRVACK_SENT) && + !purple_strequal(retnotice.z_message, ZSRVACK_NOTSENT)) { ZFreeNotice(&retnotice); return (ZERR_INTERNAL); } diff --git a/libpurple/protocols/zephyr/ZRetSubs.c b/libpurple/protocols/zephyr/ZRetSubs.c index 3a1e9addd0..70c69c357f 100644 --- a/libpurple/protocols/zephyr/ZRetSubs.c +++ b/libpurple/protocols/zephyr/ZRetSubs.c @@ -10,6 +10,7 @@ */ #include "internal.h" +#include "util.h" static Code_t Z_RetSubs(ZNotice_t *notice, int *nsubs, Z_AuthProc auth_routine); @@ -105,12 +106,12 @@ static Code_t Z_RetSubs(notice, nsubs, auth_routine) } /* non-matching protocol version numbers means the server is probably an older version--must punt */ - if (strcmp(notice->z_version,retnotice.z_version)) { + if (!purple_strequal(notice->z_version,retnotice.z_version)) { ZFreeNotice(&retnotice); return(ZERR_VERS); } if (retnotice.z_kind == SERVACK && - !strcmp(retnotice.z_opcode,notice->z_opcode)) { + purple_strequal(retnotice.z_opcode,notice->z_opcode)) { ZFreeNotice(&retnotice); gimmeack = 1; continue; diff --git a/libpurple/prpl.c b/libpurple/prpl.c index 800a0685dc..5dc589afa2 100644 --- a/libpurple/prpl.c +++ b/libpurple/prpl.c @@ -633,8 +633,8 @@ purple_find_prpl(const char *id) * prpl-xmpp isn't used yet (it's prpl-jabber), * but may be used in the future. */ - if (g_strcmp0(id, "prpl-xmpp") == 0 || - g_strcmp0(id, "prpl-gtalk") == 0) + if (purple_strequal(id, "prpl-xmpp") || + purple_strequal(id, "prpl-gtalk")) { id = "prpl-jabber"; } diff --git a/libpurple/status.c b/libpurple/status.c index 9f7f80f151..1a08a7012f 100644 --- a/libpurple/status.c +++ b/libpurple/status.c @@ -831,9 +831,7 @@ purple_status_set_active_with_attrs_list(PurpleStatus *status, gboolean active, if (default_value->type == PURPLE_TYPE_STRING) { const char *cur = purple_status_get_attr_string(status, attr->id); const char *def = purple_value_get_string(default_value); - if ((cur == NULL && def == NULL) - || (cur != NULL && def != NULL - && !strcmp(cur, def))) { + if (purple_strequal(cur, def)) { continue; } diff --git a/libpurple/tests/test_cipher.c b/libpurple/tests/test_cipher.c index adb176dd0b..45249319e1 100644 --- a/libpurple/tests/test_cipher.c +++ b/libpurple/tests/test_cipher.c @@ -27,7 +27,7 @@ \ fail_unless(ret == TRUE, NULL); \ \ - fail_unless(strcmp((digest), cdigest) == 0, NULL); \ + fail_unless(purple_strequal((digest), cdigest), NULL); \ \ purple_cipher_context_destroy(context); \ } @@ -90,7 +90,7 @@ END_TEST \ fail_unless(ret == TRUE, NULL); \ \ - fail_unless(strcmp((digest), cdigest) == 0, NULL); \ + fail_unless(purple_strequal((digest), cdigest), NULL); \ \ purple_cipher_context_destroy(context); \ } @@ -164,7 +164,7 @@ END_TEST \ fail_unless(ret == TRUE, NULL); \ \ - fail_unless(strcmp((digest), cdigest) == 0, NULL); \ + fail_unless(purple_strequal((digest), cdigest), NULL); \ \ purple_cipher_context_destroy(context); \ } @@ -225,7 +225,7 @@ END_TEST \ fail_unless(ret == TRUE, NULL); \ \ - fail_unless(strcmp((digest), cdigest) == 0, NULL); \ + fail_unless(purple_strequal((digest), cdigest), NULL); \ \ purple_cipher_context_destroy(context); \ } @@ -495,7 +495,7 @@ END_TEST NULL); \ \ fail_unless(ret == TRUE, NULL); \ - fail_unless(strcmp((digest), cdigest) == 0, NULL); \ + fail_unless(purple_strequal((digest), cdigest), NULL); \ \ purple_cipher_context_destroy(context); \ } diff --git a/libpurple/tests/test_jabber_scram.c b/libpurple/tests/test_jabber_scram.c index 512bc05a29..b81b3db767 100644 --- a/libpurple/tests/test_jabber_scram.c +++ b/libpurple/tests/test_jabber_scram.c @@ -70,7 +70,7 @@ END_TEST \ ret = jabber_scram_feed_parser(data, challenge1, &out); \ fail_unless(ret == TRUE); \ - fail_unless(g_str_equal(out, response1), "Got unexpected response to challenge. Expected %s, got %s", response1, out); \ + fail_unless(purple_strequal(out, response1), "Got unexpected response to challenge. Expected %s, got %s", response1, out); \ g_free(out); \ \ data->step = 2; \ diff --git a/libpurple/tests/tests.h b/libpurple/tests/tests.h index 475e0355ce..815b157ba7 100644 --- a/libpurple/tests/tests.h +++ b/libpurple/tests/tests.h @@ -24,7 +24,7 @@ Suite * xmlnode_suite(void); #define assert_string_equal(expected, actual) { \ const gchar *a = actual; \ - fail_unless(strcmp(expected, a) == 0, "Expected '%s' but got '%s'", expected, a); \ + fail_unless(purple_strequal(expected, a), "Expected '%s' but got '%s'", expected, a); \ } #define assert_string_equal_free(expected, actual) { \ diff --git a/libpurple/util.c b/libpurple/util.c index c7b7d1d596..5015acc76a 100644 --- a/libpurple/util.c +++ b/libpurple/util.c @@ -3029,12 +3029,7 @@ purple_socket_speaks_ipv4(int fd) gboolean purple_strequal(const gchar *left, const gchar *right) { -#if GLIB_CHECK_VERSION(2,16,0) return (g_strcmp0(left, right) == 0); -#else - return ((left == NULL && right == NULL) || - (left != NULL && right != NULL && strcmp(left, right) == 0)); -#endif } const char * @@ -3434,7 +3429,7 @@ void purple_got_protocol_handler_uri(const char *uri) tmp++; - if (g_str_equal(proto, "xmpp")) + if (purple_strequal(proto, "xmpp")) delimiter = ';'; else delimiter = '&'; @@ -3751,7 +3746,7 @@ find_header_content(const char *data, gsize data_len, const char *header) return NULL; } -static gsize +static gsize parse_content_len(const char *data, gsize data_len) { gsize content_len = 0; diff --git a/libpurple/win32/libc_interface.c b/libpurple/win32/libc_interface.c index 493dfca53f..96bea53568 100644 --- a/libpurple/win32/libc_interface.c +++ b/libpurple/win32/libc_interface.c @@ -933,7 +933,7 @@ wpurple_get_timezone_abbreviation(const struct tm *tm) for (i = 0; win32_tzmap[i].wstd != NULL; i++) { - if (strcmp(tzname, win32_tzmap[i].wstd) == 0) + if (purple_strequal(tzname, win32_tzmap[i].wstd)) { #if 0 purple_debug_info("wpurple", "TZ \"%s\" matches Windows timezone \"%s\"\n", @@ -949,7 +949,7 @@ wpurple_get_timezone_abbreviation(const struct tm *tm) return win32_tzmap[i].ustd; } - if (strcmp(tzname, win32_tzmap[i].wdst) == 0) + if (purple_strequal(tzname, win32_tzmap[i].wdst)) { #if 0 purple_debug_info("wpurple", "TZ \"%s\" matches Windows timezone \"%s\"\n", @@ -1023,7 +1023,7 @@ wpurple_get_timezone_abbreviation(const struct tm *tm) RegCloseKey(key); break; } - if (strcmp(tzname, zonename) == 0) + if (purple_strequal(tzname, zonename)) { /* Matched zone */ g_strlcpy(localtzname, keyname, sizeof(localtzname)); @@ -1038,7 +1038,7 @@ wpurple_get_timezone_abbreviation(const struct tm *tm) RegCloseKey(key); break; } - if (strcmp(tzname, zonename) == 0) + if (purple_strequal(tzname, zonename)) { /* Matched DST zone */ g_strlcpy(localtzname, keyname, sizeof(localtzname)); @@ -1056,7 +1056,7 @@ wpurple_get_timezone_abbreviation(const struct tm *tm) /* Found a localized name, so scan for that one too */ for (i = 0; win32_tzmap[i].wstd != NULL; i++) { - if (strcmp(localtzname, win32_tzmap[i].wstd) == 0) + if (purple_strequal(localtzname, win32_tzmap[i].wstd)) { #if 0 purple_debug_info("wpurple", "TZ \"%s\" matches localized Windows timezone \"%s\" (\"%s\")\n", @@ -1070,7 +1070,7 @@ wpurple_get_timezone_abbreviation(const struct tm *tm) return win32_tzmap[i].ustd; } - if (strcmp(localtzname, win32_tzmap[i].wdst) == 0) + if (purple_strequal(localtzname, win32_tzmap[i].wdst)) { #if 0 purple_debug_info("wpurple", "TZ \"%s\" matches localized Windows timezone \"%s\" (\"%s\")\n", diff --git a/pidgin/gtkaccount.c b/pidgin/gtkaccount.c index 94b9a43ea3..0681734ceb 100644 --- a/pidgin/gtkaccount.c +++ b/pidgin/gtkaccount.c @@ -277,7 +277,7 @@ username_focus_cb(GtkWidget *widget, GdkEventFocus *event, AccountPrefsDialog *d table = dialog->prpl_info->get_account_text_table(NULL); label = g_hash_table_lookup(table, "login_label"); - if(!strcmp(gtk_entry_get_text(GTK_ENTRY(widget)), label)) { + if(purple_strequal(gtk_entry_get_text(GTK_ENTRY(widget)), label)) { gtk_entry_set_text(GTK_ENTRY(widget), ""); gtk_widget_modify_text(widget, GTK_STATE_NORMAL,NULL); } @@ -574,7 +574,7 @@ add_login_options(AccountPrefsDialog *dialog, GtkWidget *parent) menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(dialog->protocol_menu)); item = gtk_menu_get_active(GTK_MENU(menu)); if (value == NULL && g_object_get_data(G_OBJECT(item), "fakegoogle") && - !strcmp(purple_account_user_split_get_text(split), _("Domain"))) + purple_strequal(purple_account_user_split_get_text(split), _("Domain"))) value = "gmail.com"; if (value != NULL) @@ -823,7 +823,7 @@ add_protocol_options(AccountPrefsDialog *dialog) { case PURPLE_PREF_BOOLEAN: if (account == NULL || - strcmp(purple_account_get_protocol_id(account), + !purple_strequal(purple_account_get_protocol_id(account), dialog->protocol_id)) { bool_value = purple_account_option_get_default_bool(option); @@ -848,7 +848,7 @@ add_protocol_options(AccountPrefsDialog *dialog) case PURPLE_PREF_INT: if (account == NULL || - strcmp(purple_account_get_protocol_id(account), + !purple_strequal(purple_account_get_protocol_id(account), dialog->protocol_id)) { int_value = purple_account_option_get_default_int(option); @@ -873,7 +873,7 @@ add_protocol_options(AccountPrefsDialog *dialog) case PURPLE_PREF_STRING: if (account == NULL || - strcmp(purple_account_get_protocol_id(account), + !purple_strequal(purple_account_get_protocol_id(account), dialog->protocol_id)) { str_value = purple_account_option_get_default_string(option); @@ -909,7 +909,7 @@ add_protocol_options(AccountPrefsDialog *dialog) idx = 0; if (account == NULL || - strcmp(purple_account_get_protocol_id(account), + !purple_strequal(purple_account_get_protocol_id(account), dialog->protocol_id)) { str_value = purple_account_option_get_default_list_value(option); @@ -2519,7 +2519,7 @@ get_user_info_cb(GtkWidget *label, gpointer data) { struct auth_request *ar = data; - if (!strcmp(uri, "viewinfo")) { + if (purple_strequal(uri, "viewinfo")) { pidgin_retrieve_user_info(purple_account_get_connection(ar->account), ar->username); return TRUE; } diff --git a/pidgin/gtkblist.c b/pidgin/gtkblist.c index 77922b0a8a..125788e920 100644 --- a/pidgin/gtkblist.c +++ b/pidgin/gtkblist.c @@ -1115,8 +1115,8 @@ static void chat_select_account_cb(GObject *w, PurpleAccount *account, PidginChatData *data) { - if (strcmp(purple_account_get_protocol_id(data->rq_data.account), - purple_account_get_protocol_id(account)) == 0) + if (purple_strequal(purple_account_get_protocol_id(data->rq_data.account), + purple_account_get_protocol_id(account))) { data->rq_data.account = account; } @@ -2080,7 +2080,7 @@ pidgin_blist_sound_method_pref_cb(const char *name, PurplePrefType type, { gboolean sensitive = TRUE; - if(!strcmp(value, "none")) + if(purple_strequal(value, "none")) sensitive = FALSE; gtk_widget_set_sensitive(gtk_item_factory_get_widget(gtkblist->ift, N_("/Tools/Mute Sounds")), sensitive); @@ -2102,7 +2102,7 @@ add_buddies_from_vcard(const char *prpl_id, PurpleGroup *group, GList *list, gc = (PurpleConnection *)l->data; account = purple_connection_get_account(gc); - if (!strcmp(purple_account_get_protocol_id(account), prpl_id)) + if (purple_strequal(purple_account_get_protocol_id(account), prpl_id)) break; account = NULL; @@ -2166,21 +2166,21 @@ parse_vcard(const char *vcard, PurpleGroup *group) if (*s == '\n') *s++ = '\0'; /* We only want to worry about a few fields here. */ - if (!strcmp(field, "FN")) + if (purple_strequal(field, "FN")) alias = g_strdup(value); - else if (!strcmp(field, "X-AIM") || !strcmp(field, "X-ICQ") || - !strcmp(field, "X-JABBER")) + else if (purple_strequal(field, "X-AIM") || purple_strequal(field, "X-ICQ") || + purple_strequal(field, "X-JABBER")) { char **values = g_strsplit(value, ":", 0); char **im; for (im = values; *im != NULL; im++) { - if (!strcmp(field, "X-AIM")) + if (purple_strequal(field, "X-AIM")) aims = g_list_append(aims, g_strdup(*im)); - else if (!strcmp(field, "X-ICQ")) + else if (purple_strequal(field, "X-ICQ")) icqs = g_list_append(icqs, g_strdup(*im)); - else if (!strcmp(field, "X-JABBER")) + else if (purple_strequal(field, "X-JABBER")) jabbers = g_list_append(jabbers, g_strdup(*im)); } @@ -3323,10 +3323,10 @@ static char *get_mood_icon_path(const char *mood) { char *path; - if (!strcmp(mood, "busy")) { + if (purple_strequal(mood, "busy")) { path = g_build_filename(DATADIR, "pixmaps", "pidgin", "status", "16", "busy.png", NULL); - } else if (!strcmp(mood, "hiptop")) { + } else if (purple_strequal(mood, "hiptop")) { path = g_build_filename(DATADIR, "pixmaps", "pidgin", "emblems", "16", "hiptop.png", NULL); } else { @@ -3552,7 +3552,7 @@ set_mood_cb(GtkWidget *widget, PurpleAccount *account) path, (gpointer)mood->mood); g_free(path); - if (current_mood && !strcmp(current_mood, mood->mood)) + if (current_mood && purple_strequal(current_mood, mood->mood)) purple_request_field_list_add_selected(f, _(mood->description)); } purple_request_field_group_add_field(g, f); @@ -3777,7 +3777,7 @@ static char *pidgin_get_tooltip_text(PurpleBlistNode *node, gboolean full) * this alias, so there's no point in showing it in the tooltip. */ if (full && c && b->alias != NULL && b->alias[0] != '\0' && (c->alias != NULL && c->alias[0] != '\0') && - strcmp(c->alias, b->alias) != 0) + !purple_strequal(c->alias, b->alias)) { tmp = g_markup_escape_text(b->alias, -1); purple_notify_user_info_add_pair(user_info, _("Buddy Alias"), tmp); @@ -4852,7 +4852,7 @@ static void _prefs_change_redo_list(const char *name, PurplePrefType type, static void _prefs_change_sort_method(const char *pref_name, PurplePrefType type, gconstpointer val, gpointer data) { - if(!strcmp(pref_name, PIDGIN_PREFS_ROOT "/blist/sort_type")) + if(purple_strequal(pref_name, PIDGIN_PREFS_ROOT "/blist/sort_type")) pidgin_blist_sort_method_set(val); } @@ -5379,7 +5379,7 @@ update_account_error_state(PurpleAccount *account, /* else, new and old are both non-NULL */ - descriptions_differ = strcmp(old->description, new->description); + descriptions_differ = !purple_strequal(old->description, new->description); desc = new->description; switch (new->type) { @@ -5955,8 +5955,8 @@ static void pidgin_blist_show(PurpleBuddyList *list) gtk_tree_view_set_search_equal_func(GTK_TREE_VIEW(gtkblist->treeview), pidgin_blist_search_equal_func, NULL, NULL); - gtk_box_pack_start(GTK_BOX(gtkblist->vbox), - pidgin_make_scrollable(gtkblist->treeview, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC, GTK_SHADOW_NONE, -1, -1), + gtk_box_pack_start(GTK_BOX(gtkblist->vbox), + pidgin_make_scrollable(gtkblist->treeview, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC, GTK_SHADOW_NONE, -1, -1), TRUE, TRUE, 0); sep = gtk_hseparator_new(); @@ -6006,7 +6006,7 @@ static void pidgin_blist_show(PurpleBuddyList *list) gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtk_item_factory_get_item (gtkblist->ift, N_("/Buddies/Show/Protocol Icons"))), purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/blist/show_protocol_icons")); - if(!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), "none")) + if(purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), "none")) gtk_widget_set_sensitive(gtk_item_factory_get_widget(gtkblist->ift, N_("/Tools/Mute Sounds")), FALSE); /* Update some dynamic things */ @@ -7634,7 +7634,7 @@ void pidgin_blist_sort_method_unreg(const char *id) while(l) { struct pidgin_blist_sort_method *method = l->data; - if(!strcmp(method->id, id)) { + if(purple_strequal(method->id, id)) { pidgin_blist_sort_methods = g_list_delete_link(pidgin_blist_sort_methods, l); g_free(method->id); g_free(method->name); @@ -7652,7 +7652,7 @@ void pidgin_blist_sort_method_set(const char *id){ if(!id) id = "none"; - while (l && strcmp(((struct pidgin_blist_sort_method*)l->data)->id, id)) + while (l && !purple_strequal(((struct pidgin_blist_sort_method*)l->data)->id, id)) l = l->next; if (l) { @@ -7661,7 +7661,7 @@ void pidgin_blist_sort_method_set(const char *id){ pidgin_blist_sort_method_set("none"); return; } - if (!strcmp(id, "none")) { + if (purple_strequal(id, "none")) { redo_buddy_list(purple_get_blist(), TRUE, FALSE); } else { redo_buddy_list(purple_get_blist(), FALSE, FALSE); @@ -8238,7 +8238,7 @@ pidgin_blist_update_sort_methods(void) for (l = pidgin_blist_sort_methods; l; l = l->next) { method = (PidginBlistSortMethod *) l->data; menuitem = gtk_radio_menu_item_new_with_label(sl, _(method->name)); - if (g_str_equal(m, method->id)) + if (purple_strequal(m, method->id)) activeitem = menuitem; sl = gtk_radio_menu_item_get_group(GTK_RADIO_MENU_ITEM(menuitem)); gtk_menu_shell_append(GTK_MENU_SHELL(sortmenu), menuitem); diff --git a/pidgin/gtkconv.c b/pidgin/gtkconv.c index 79e3140951..b98c6375ef 100644 --- a/pidgin/gtkconv.c +++ b/pidgin/gtkconv.c @@ -472,7 +472,7 @@ check_for_and_do_command(PurpleConversation *conv) cmdline = cmd + strlen(prefix); - if (strcmp(cmdline, "xyzzy") == 0) { + if (purple_strequal(cmdline, "xyzzy")) { purple_conversation_write(conv, "", "Nothing happens", PURPLE_MESSAGE_NO_LOG, time(NULL)); g_free(cmd); @@ -788,7 +788,7 @@ invite_dnd_recv(GtkWidget *widget, GdkDragContext *dc, gint x, gint y, else return; - if (strcmp(convprotocol, purple_account_get_protocol_id(buddy->account))) + if (!purple_strequal(convprotocol, purple_account_get_protocol_id(buddy->account))) { purple_notify_error(PIDGIN_CONVERSATION(info->conv), NULL, _("That buddy is not on the same protocol as this " @@ -815,7 +815,7 @@ invite_dnd_recv(GtkWidget *widget, GdkDragContext *dc, gint x, gint y, _("You are not currently signed on with an account that " "can invite that buddy."), NULL); } - else if (strcmp(convprotocol, purple_account_get_protocol_id(account))) + else if (!purple_strequal(convprotocol, purple_account_get_protocol_id(account))) { purple_notify_error(PIDGIN_CONVERSATION(info->conv), NULL, _("That buddy is not on the same protocol as this " @@ -1609,7 +1609,7 @@ create_chat_menu(PurpleConversation *conv, const char *who, PurpleConnection *gc if (menu) gtk_widget_destroy(menu); - if (!strcmp(chat->nick, purple_normalize(conv->account, who))) + if (purple_strequal(chat->nick, purple_normalize(conv->account, who))) is_me = TRUE; menu = gtk_menu_new(); @@ -3157,7 +3157,7 @@ sound_method_pref_changed_cb(const char *name, PurplePrefType type, PidginWindow *win = data; const char *method = value; - if (!strcmp(method, "none")) + if (purple_strequal(method, "none")) { gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(win->menu.sounds), FALSE); @@ -3540,7 +3540,7 @@ setup_menubar(PidginWindow *win) gtk_item_factory_get_widget(win->menu.item_factory, N_("/Options/Enable Sounds")); method = purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"); - if (method != NULL && !strcmp(method, "none")) + if (purple_strequal(method, "none")) { gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(win->menu.sounds), FALSE); @@ -3858,7 +3858,7 @@ compare_buddy_presence(PurplePresence *p1, PurplePresence *p2) PurpleBuddy *b1 = purple_presence_get_buddy(p1); PurpleBuddy *b2 = purple_presence_get_buddy(p2); if (purple_buddy_get_account(b1) == purple_buddy_get_account(b2) && - strcmp(purple_buddy_get_name(b1), purple_buddy_get_name(b2)) == 0) + purple_strequal(purple_buddy_get_name(b1), purple_buddy_get_name(b2))) return FALSE; return TRUE; } @@ -4019,7 +4019,7 @@ add_chat_buddy_common(PurpleConversation *conv, PurpleConvChatBuddy *cb, const c stock = get_chat_buddy_status_icon(chat, name, flags); - if (!strcmp(chat->nick, purple_normalize(conv->account, old_name != NULL ? old_name : name))) + if (purple_strequal(chat->nick, purple_normalize(conv->account, old_name != NULL ? old_name : name))) is_me = TRUE; is_buddy = cb->buddy; @@ -4234,7 +4234,7 @@ tab_complete(PurpleConversation *conv) CHAT_USERS_ALIAS_COLUMN, &alias, -1); - if (name && alias && strcmp(name, alias)) + if (name && alias && !purple_strequal(name, alias)) tab_complete_process_item(&most_matched, entered, entered_bytes, &partial, nick_partial, &matches, alias); g_free(name); @@ -4370,16 +4370,15 @@ sort_chat_users(GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, gpointer us f2 &= PURPLE_CBFLAGS_VOICE | PURPLE_CBFLAGS_HALFOP | PURPLE_CBFLAGS_OP | PURPLE_CBFLAGS_FOUNDER; - if (user1 == NULL || user2 == NULL) { - if (!(user1 == NULL && user2 == NULL)) - ret = (user1 == NULL) ? -1: 1; - } else if (f1 != f2) { - /* sort more important users first */ - ret = (f1 > f2) ? -1 : 1; - } else if (buddy1 != buddy2) { - ret = (buddy1 > buddy2) ? -1 : 1; - } else { - ret = strcmp(user1, user2); + ret = g_strcmp0(user1, user2); + + if (user1 != NULL && user2 != NULL) { + if (f1 != f2) { + /* sort more important users first */ + ret = (f1 > f2) ? -1 : 1; + } else if (buddy1 != buddy2) { + ret = (buddy1 > buddy2) ? -1 : 1; + } } g_free(user1); @@ -4414,13 +4413,13 @@ update_chat_alias(PurpleBuddy *buddy, PurpleConversation *conv, PurpleConnection gtk_tree_model_get(model, &iter, CHAT_USERS_NAME_COLUMN, &name, -1); - if (!strcmp(normalized_name, purple_normalize(conv->account, name))) { + if (purple_strequal(normalized_name, purple_normalize(conv->account, name))) { const char *alias = name; char *tmp; char *alias_key = NULL; PurpleBuddy *buddy2; - if (strcmp(chat->nick, purple_normalize(conv->account, name))) { + if (!purple_strequal(chat->nick, purple_normalize(conv->account, name))) { /* This user is not me, so look into updating the alias. */ if ((buddy2 = purple_find_buddy(conv->account, name)) != NULL) { @@ -4517,7 +4516,7 @@ buddy_cb_common(PurpleBuddy *buddy, PurpleConversation *conv, gboolean is_buddy) gtk_tree_model_get(model, &iter, CHAT_USERS_NAME_COLUMN, &name, -1); - if (!strcmp(normalized_name, purple_normalize(conv->account, name))) { + if (purple_strequal(normalized_name, purple_normalize(conv->account, name))) { gtk_list_store_set(GTK_LIST_STORE(model), &iter, CHAT_USERS_WEIGHT_COLUMN, is_buddy ? PANGO_WEIGHT_BOLD : PANGO_WEIGHT_NORMAL, -1); g_free(name); @@ -4820,7 +4819,7 @@ setup_chat_userlist(PidginConversation *gtkconv, GtkWidget *hpaned) gtkchat->list = list; - gtk_box_pack_start(GTK_BOX(lbox), + gtk_box_pack_start(GTK_BOX(lbox), pidgin_make_scrollable(list, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC, GTK_SHADOW_IN, -1, -1), TRUE, TRUE, 0); } @@ -5141,8 +5140,8 @@ conv_dnd_recv(GtkWidget *widget, GdkDragContext *dc, guint x, guint y, */ if (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_CHAT && prpl_info && PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl_info, chat_invite) && - strcmp(purple_account_get_protocol_id(convaccount), - purple_account_get_protocol_id(buddyaccount)) == 0) { + purple_strequal(purple_account_get_protocol_id(convaccount), + purple_account_get_protocol_id(buddyaccount))) { purple_conv_chat_invite_user(PURPLE_CONV_CHAT(conv), buddyname, NULL, TRUE); } else { /* @@ -5196,7 +5195,7 @@ conv_dnd_recv(GtkWidget *widget, GdkDragContext *dc, guint x, guint y, */ if (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_CHAT && prpl_info && PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl_info, chat_invite) && - strcmp(purple_account_get_protocol_id(convaccount), protocol) == 0) { + purple_strequal(purple_account_get_protocol_id(convaccount), protocol)) { purple_conv_chat_invite_user(PURPLE_CONV_CHAT(conv), username, NULL, TRUE); } else { c = purple_conversation_new(PURPLE_CONV_TYPE_IM, account, username); @@ -5482,11 +5481,11 @@ received_im_msg_cb(PurpleAccount *account, char *sender, char *message, guint timer; /* create hidden conv if hide_new pref is always */ - if (strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new"), "always") == 0) + if (purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new"), "always")) hide = TRUE; /* create hidden conv if hide_new pref is away and account is away */ - if (strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new"), "away") == 0 && + if (purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new"), "away") && !purple_status_is_available(purple_account_get_active_status(account))) hide = TRUE; @@ -6404,7 +6403,7 @@ pidgin_conv_custom_smiley_add(PurpleConversation *conv, const char *smile, gbool gtkconv = PIDGIN_CONVERSATION(conv); for (list = (struct smiley_list *)current_smiley_theme->list; list; list = list->next) { - if (!strcmp(list->sml, conv_sml)) { + if (purple_strequal(list->sml, conv_sml)) { sml = list->sml; break; } @@ -6878,7 +6877,7 @@ pidgin_conv_update_fields(PurpleConversation *conv, PidginConvFields fields) gtk_label_set_text(GTK_LABEL(gtkconv->menu_label), title); if (pidgin_conv_window_is_active_conversation(conv)) { const char* current_title = gtk_window_get_title(GTK_WINDOW(win->window)); - if (current_title == NULL || strcmp(current_title, title) != 0) + if (current_title == NULL || !purple_strequal(current_title, title)) gtk_window_set_title(GTK_WINDOW(win->window), title); } @@ -7471,7 +7470,7 @@ account_status_changed_cb(PurpleAccount *account, PurpleStatus *oldstatus, PurpleConversation *conv = NULL; PidginConversation *gtkconv; - if(strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new"), "away")!=0) + if(!purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new"), "away")) return; if(purple_status_is_available(oldstatus) || !purple_status_is_available(newstatus)) @@ -7506,10 +7505,10 @@ hide_new_pref_cb(const char *name, PurplePrefType type, if(!hidden_convwin) return; - if(strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new"), "always")==0) + if(purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new"), "always")) return; - if(strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new"), "away")==0) + if(purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new"), "away")) when_away = TRUE; for (l = hidden_convwin->gtkconvs; l; ) @@ -7537,7 +7536,7 @@ conv_placement_pref_cb(const char *name, PurplePrefType type, { PidginConvPlacementFunc func; - if (strcmp(name, PIDGIN_PREFS_ROOT "/conversations/placement")) + if (!purple_strequal(name, PIDGIN_PREFS_ROOT "/conversations/placement")) return; func = pidgin_conv_placement_get_fnc(value); @@ -9154,7 +9153,7 @@ switch_conv_cb(GtkNotebook *notebook, GtkWidget *page, gint page_num, pidgin_conv_switch_active_conversation(conv); sound_method = purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"); - if (strcmp(sound_method, "none") != 0) + if (!purple_strequal(sound_method, "none")) gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(win->menu.sounds), gtkconv->make_sound); @@ -10055,7 +10054,7 @@ get_conv_placement_data(const char *id) for (n = conv_placement_fncs; n; n = n->next) { data = n->data; - if (!strcmp(data->id, id)) + if (purple_strequal(data->id, id)) return data; } diff --git a/pidgin/gtkdialogs.c b/pidgin/gtkdialogs.c index ca60b4d121..9085286938 100644 --- a/pidgin/gtkdialogs.c +++ b/pidgin/gtkdialogs.c @@ -946,31 +946,31 @@ pidgin_dialogs_ee(const char *ee) gchar *norm = purple_strreplace(ee, "rocksmyworld", ""); label = gtk_label_new(NULL); - if (!strcmp(norm, "zilding")) + if (purple_strequal(norm, "zilding")) gtk_label_set_markup(GTK_LABEL(label), "<span weight=\"bold\" size=\"large\" foreground=\"purple\">Amazing! Simply Amazing!</span>"); - else if (!strcmp(norm, "robflynn")) + else if (purple_strequal(norm, "robflynn")) gtk_label_set_markup(GTK_LABEL(label), "<span weight=\"bold\" size=\"large\" foreground=\"#1f6bad\">Pimpin\' Penguin Style! *Waddle Waddle*</span>"); - else if (!strcmp(norm, "flynorange")) + else if (purple_strequal(norm, "flynorange")) gtk_label_set_markup(GTK_LABEL(label), "<span weight=\"bold\" size=\"large\" foreground=\"blue\">You should be me. I'm so cute!</span>"); - else if (!strcmp(norm, "ewarmenhoven")) + else if (purple_strequal(norm, "ewarmenhoven")) gtk_label_set_markup(GTK_LABEL(label), "<span weight=\"bold\" size=\"large\" foreground=\"orange\">Now that's what I like!</span>"); - else if (!strcmp(norm, "markster97")) + else if (purple_strequal(norm, "markster97")) gtk_label_set_markup(GTK_LABEL(label), "<span weight=\"bold\" size=\"large\" foreground=\"brown\">Ahh, and excellent choice!</span>"); - else if (!strcmp(norm, "seanegn")) + else if (purple_strequal(norm, "seanegn")) gtk_label_set_markup(GTK_LABEL(label), "<span weight=\"bold\" size=\"large\" foreground=\"#009900\">Everytime you click my name, an angel gets its wings.</span>"); - else if (!strcmp(norm, "chipx86")) + else if (purple_strequal(norm, "chipx86")) gtk_label_set_markup(GTK_LABEL(label), "<span weight=\"bold\" size=\"large\" foreground=\"red\">This sunflower seed taste like pizza.</span>"); - else if (!strcmp(norm, "markdoliner")) + else if (purple_strequal(norm, "markdoliner")) gtk_label_set_markup(GTK_LABEL(label), "<span weight=\"bold\" size=\"large\" foreground=\"#6364B1\">Hey! I was in that tumbleweed!</span>"); - else if (!strcmp(norm, "lschiere")) + else if (purple_strequal(norm, "lschiere")) gtk_label_set_markup(GTK_LABEL(label), "<span weight=\"bold\" size=\"large\" foreground=\"gray\">I'm not anything.</span>"); g_free(norm); diff --git a/pidgin/gtkdocklet.c b/pidgin/gtkdocklet.c index bbf997bc63..443e990f0a 100644 --- a/pidgin/gtkdocklet.c +++ b/pidgin/gtkdocklet.c @@ -125,7 +125,7 @@ docklet_update_status(void) /* determine if any ims have unseen messages */ convs = get_pending_list(DOCKLET_TOOLTIP_LINE_LIMIT); - if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "pending")) { + if (purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "pending")) { if (convs && ui_ops->create && !visible) { g_list_free(convs); ui_ops->create(); @@ -285,7 +285,7 @@ docklet_show_pref_changed_cb(const char *name, PurplePrefType type, gconstpointer value, gpointer data) { const char *val = value; - if (!strcmp(val, "always")) { + if (purple_strequal(val, "always")) { if (ui_ops->create) { if (!visible) ui_ops->create(); @@ -294,7 +294,7 @@ docklet_show_pref_changed_cb(const char *name, PurplePrefType type, visibility_manager = TRUE; } } - } else if (!strcmp(val, "never")) { + } else if (purple_strequal(val, "never")) { if (visible && ui_ops->destroy) ui_ops->destroy(); } else { @@ -426,7 +426,7 @@ activate_status_account_cb(GtkMenuItem *menuitem, gpointer user_data) if (sub) { const PurpleStatusType *sub_type = purple_savedstatus_substatus_get_type(sub); const char *subtype_status_id = purple_status_type_get_id(sub_type); - if (subtype_status_id && !strcmp(subtype_status_id, + if (subtype_status_id && purple_strequal(subtype_status_id, purple_status_type_get_id(status_type))) found = TRUE; } @@ -727,7 +727,7 @@ docklet_menu(void) menuitem = gtk_check_menu_item_new_with_mnemonic(_("Mute _Sounds")); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/sound/mute")); - if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), "none")) + if (purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), "none")) gtk_widget_set_sensitive(GTK_WIDGET(menuitem), FALSE); g_signal_connect(G_OBJECT(menuitem), "toggled", G_CALLBACK(docklet_toggle_mute), NULL); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); @@ -789,7 +789,7 @@ void pidgin_docklet_embedded() { if (!visibility_manager - && strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "pending")) { + && !purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "pending")) { pidgin_blist_visibility_manager_add(); visibility_manager = TRUE; } @@ -844,7 +844,7 @@ pidgin_docklet_init() docklet_show_pref_changed_cb, NULL); docklet_ui_init(); - if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "always") && ui_ops && ui_ops->create) + if (purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "always") && ui_ops && ui_ops->create) ui_ops->create(); purple_signal_connect(conn_handle, "signed-on", diff --git a/pidgin/gtkimhtml.c b/pidgin/gtkimhtml.c index b26386dc88..777db0bef4 100644 --- a/pidgin/gtkimhtml.c +++ b/pidgin/gtkimhtml.c @@ -1382,9 +1382,9 @@ imhtml_paste_cb(GtkIMHtml *imhtml, const char *str) if (!gtk_text_view_get_editable(GTK_TEXT_VIEW(imhtml))) return; - if (!str || !*str || !strcmp(str, "html")) + if (!str || !*str || purple_strequal(str, "html")) g_signal_emit_by_name(imhtml, "paste_clipboard"); - else if (!strcmp(str, "text")) + else if (purple_strequal(str, "text")) paste_unformatted_cb(NULL, imhtml); } @@ -3309,13 +3309,13 @@ void gtk_imhtml_insert_html_at_iter(GtkIMHtml *imhtml, if (((font->bold && !oldfont->bold) || (oldfont->bold && !font->bold)) && !(options & GTK_IMHTML_NO_FORMATTING)) gtk_imhtml_toggle_bold(imhtml); - if (font->face && (!oldfont->face || strcmp(font->face, oldfont->face) != 0) && !(options & GTK_IMHTML_NO_FONTS)) + if (font->face && !purple_strequal(font->face, oldfont->face) && !(options & GTK_IMHTML_NO_FONTS)) gtk_imhtml_toggle_fontface(imhtml, oldfont->face); - if (font->fore && (!oldfont->fore || strcmp(font->fore, oldfont->fore) != 0) && !(options & GTK_IMHTML_NO_COLOURS)) + if (font->fore && !purple_strequal(font->fore, oldfont->fore) && !(options & GTK_IMHTML_NO_COLOURS)) gtk_imhtml_toggle_forecolor(imhtml, oldfont->fore); - if (font->back && (!oldfont->back || strcmp(font->back, oldfont->back) != 0) && !(options & GTK_IMHTML_NO_COLOURS)) + if (font->back && !purple_strequal(font->back, oldfont->back) && !(options & GTK_IMHTML_NO_COLOURS)) gtk_imhtml_toggle_backcolor(imhtml, oldfont->back); } @@ -4054,7 +4054,7 @@ gboolean gtk_imhtml_search_find(GtkIMHtml *imhtml, const gchar *text) start_mark = gtk_text_buffer_get_mark(imhtml->text_buffer, "search"); - if (start_mark && imhtml->search_string && !strcmp(text, imhtml->search_string)) + if (start_mark && imhtml->search_string && purple_strequal(text, imhtml->search_string)) new_search = FALSE; if (new_search) { @@ -4600,13 +4600,13 @@ static void mark_set_cb(GtkTextBuffer *buffer, GtkTextIter *arg1, GtkTextMark *m GtkTextTag *tag = GTK_TEXT_TAG(l->data); if (tag->name) { - if (strcmp(tag->name, "BOLD") == 0) + if (purple_strequal(tag->name, "BOLD")) imhtml->edit.bold = TRUE; - else if (strcmp(tag->name, "ITALICS") == 0) + else if (purple_strequal(tag->name, "ITALICS")) imhtml->edit.italic = TRUE; - else if (strcmp(tag->name, "UNDERLINE") == 0) + else if (purple_strequal(tag->name, "UNDERLINE")) imhtml->edit.underline = TRUE; - else if (strcmp(tag->name, "STRIKE") == 0) + else if (purple_strequal(tag->name, "STRIKE")) imhtml->edit.strike = TRUE; else if (strncmp(tag->name, "FORECOLOR ", 10) == 0) imhtml->edit.forecolor = g_strdup(&(tag->name)[10]); @@ -4793,7 +4793,7 @@ static gboolean gtk_imhtml_toggle_str_tag(GtkIMHtml *imhtml, const char *value, g_free(*edit_field); *edit_field = NULL; - if (value && strcmp(value, "") != 0) + if (value && *value) { *edit_field = g_strdup(value); @@ -5113,13 +5113,13 @@ static const gchar *tag_to_html_start(GtkTextTag *tag) name = tag->name; g_return_val_if_fail(name != NULL, ""); - if (strcmp(name, "BOLD") == 0) { + if (purple_strequal(name, "BOLD")) { return "<b>"; - } else if (strcmp(name, "ITALICS") == 0) { + } else if (purple_strequal(name, "ITALICS")) { return "<i>"; - } else if (strcmp(name, "UNDERLINE") == 0) { + } else if (purple_strequal(name, "UNDERLINE")) { return "<u>"; - } else if (strcmp(name, "STRIKE") == 0) { + } else if (purple_strequal(name, "STRIKE")) { return "<s>"; } else if (strncmp(name, "LINK ", 5) == 0) { char *tmp = g_object_get_data(G_OBJECT(tag), "link_url"); @@ -5220,13 +5220,13 @@ static const gchar *tag_to_html_end(GtkTextTag *tag) name = tag->name; g_return_val_if_fail(name != NULL, ""); - if (strcmp(name, "BOLD") == 0) { + if (purple_strequal(name, "BOLD")) { return "</b>"; - } else if (strcmp(name, "ITALICS") == 0) { + } else if (purple_strequal(name, "ITALICS")) { return "</i>"; - } else if (strcmp(name, "UNDERLINE") == 0) { + } else if (purple_strequal(name, "UNDERLINE")) { return "</u>"; - } else if (strcmp(name, "STRIKE") == 0) { + } else if (purple_strequal(name, "STRIKE")) { return "</s>"; } else if (strncmp(name, "LINK ", 5) == 0) { return "</a>"; @@ -5583,7 +5583,7 @@ void gtk_imhtml_setup_entry(GtkIMHtml *imhtml, PurpleConnectionFlags flags) gtk_imhtml_font_set_size(imhtml, size); } - if(strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/fgcolor"), "") != 0) + if(!purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/fgcolor"), "")) { gdk_color_parse(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/fgcolor"), &fg_color); @@ -5597,7 +5597,7 @@ void gtk_imhtml_setup_entry(GtkIMHtml *imhtml, PurpleConnectionFlags flags) gtk_imhtml_toggle_forecolor(imhtml, color); if(!(flags & PURPLE_CONNECTION_NO_BGCOLOR) && - strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/bgcolor"), "") != 0) + !purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/bgcolor"), "")) { gdk_color_parse(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/bgcolor"), &bg_color); diff --git a/pidgin/gtkimhtmltoolbar.c b/pidgin/gtkimhtmltoolbar.c index e6d6f7652b..a192e766ff 100644 --- a/pidgin/gtkimhtmltoolbar.c +++ b/pidgin/gtkimhtmltoolbar.c @@ -704,7 +704,7 @@ smiley_is_unique(GSList *list, GtkIMHtmlSmiley *smiley) { while (list) { GtkIMHtmlSmiley *cur = (GtkIMHtmlSmiley *) list->data; - if (!strcmp(cur->file, smiley->file)) + if (purple_strequal(cur->file, smiley->file)) return FALSE; list = list->next; } diff --git a/pidgin/gtklog.c b/pidgin/gtklog.c index 03eafea121..3e02fba2cb 100644 --- a/pidgin/gtklog.c +++ b/pidgin/gtklog.c @@ -82,7 +82,7 @@ static gboolean log_viewer_equal(gconstpointer y, gconstpointer z) normal = g_strdup(purple_normalize(a->account, a->buddyname)); ret = (a->account == b->account) && - !strcmp(normal, purple_normalize(b->account, b->buddyname)); + purple_strequal(normal, purple_normalize(b->account, b->buddyname)); g_free(normal); return ret; @@ -135,7 +135,7 @@ static void search_cb(GtkWidget *button, PidginLogViewer *lv) return; } - if (lv->search != NULL && !strcmp(lv->search, search_term)) + if (lv->search != NULL && purple_strequal(lv->search, search_term)) { /* Searching for the same term acts as "Find Next" */ gtk_imhtml_search_find(GTK_IMHTML(lv->imhtml), lv->search); @@ -504,7 +504,7 @@ static void populate_log_tree(PidginLogViewer *lv) month = purple_utf8_strftime(_("%B %Y"), log->tm ? log->tm : localtime(&log->time)); - if (strcmp(month, prev_top_month) != 0) + if (!purple_strequal(month, prev_top_month)) { /* top level */ gtk_tree_store_append(lv->treestore, &toplevel, NULL); @@ -620,7 +620,7 @@ static PidginLogViewer *display_log_viewer(struct log_viewer_hash_t *ht, GList * col = gtk_tree_view_column_new_with_attributes ("time", rend, "markup", 0, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW(lv->treeview), col); gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (lv->treeview), FALSE); - gtk_paned_add1(GTK_PANED(pane), + gtk_paned_add1(GTK_PANED(pane), pidgin_make_scrollable(lv->treeview, GTK_POLICY_NEVER, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, -1, -1)); populate_log_tree(lv); diff --git a/pidgin/gtknotify.c b/pidgin/gtknotify.c index 2bf9b907dd..f1e1bae736 100644 --- a/pidgin/gtknotify.c +++ b/pidgin/gtknotify.c @@ -1308,8 +1308,8 @@ pidgin_notify_uri(const char *uri) } else if (purple_running_osx() == TRUE) { argv = g_slist_append(argv, "open"); argv = g_slist_append(argv, uri_escaped); - } else if (!strcmp(web_browser, "epiphany") || - !strcmp(web_browser, "galeon")) + } else if (purple_strequal(web_browser, "epiphany") || + purple_strequal(web_browser, "galeon")) { argv = g_slist_append(argv, (gpointer)web_browser); @@ -1319,13 +1319,13 @@ pidgin_notify_uri(const char *uri) argv = g_slist_append(argv, "-n"); argv = g_slist_append(argv, uri_escaped); - } else if (!strcmp(web_browser, "xdg-open")) { + } else if (purple_strequal(web_browser, "xdg-open")) { argv = g_slist_append(argv, "xdg-open"); argv = g_slist_append(argv, uri_escaped); - } else if (!strcmp(web_browser, "gnome-open")) { + } else if (purple_strequal(web_browser, "gnome-open")) { argv = g_slist_append(argv, "gnome-open"); argv = g_slist_append(argv, uri_escaped); - } else if (!strcmp(web_browser, "kfmclient")) { + } else if (purple_strequal(web_browser, "kfmclient")) { argv = g_slist_append(argv, "kfmclient"); argv = g_slist_append(argv, "openURL"); argv = g_slist_append(argv, uri_escaped); @@ -1333,10 +1333,10 @@ pidgin_notify_uri(const char *uri) * Does Konqueror have options to open in new tab * and/or current window? */ - } else if (!strcmp(web_browser, "mozilla") || - !strcmp(web_browser, "mozilla-firebird") || - !strcmp(web_browser, "firefox") || - !strcmp(web_browser, "seamonkey")) + } else if (purple_strequal(web_browser, "mozilla") || + purple_strequal(web_browser, "mozilla-firebird") || + purple_strequal(web_browser, "firefox") || + purple_strequal(web_browser, "seamonkey")) { argv = g_slist_append(argv, (gpointer)web_browser); argv = g_slist_append(argv, uri_escaped); @@ -1365,7 +1365,7 @@ pidgin_notify_uri(const char *uri) * should probably be split apart from mozilla-firebird * and mozilla... but this is good for now. */ - if (!strcmp(web_browser, "firefox")) { + if (purple_strequal(web_browser, "firefox")) { argv_remote = g_slist_append(argv_remote, "-a"); argv_remote = g_slist_append(argv_remote, "firefox"); @@ -1374,7 +1374,7 @@ pidgin_notify_uri(const char *uri) argv_remote = g_slist_append(argv_remote, "-remote"); argv_remote = g_slist_append(argv_remote, uri_custom); } - } else if (!strcmp(web_browser, "netscape")) { + } else if (purple_strequal(web_browser, "netscape")) { argv = g_slist_append(argv, "netscape"); argv = g_slist_append(argv, uri_escaped); @@ -1391,7 +1391,7 @@ pidgin_notify_uri(const char *uri) argv_remote = g_slist_append(argv_remote, "-remote"); argv_remote = g_slist_append(argv_remote, uri_custom); } - } else if (!strcmp(web_browser, "opera")) { + } else if (purple_strequal(web_browser, "opera")) { argv = g_slist_append(argv, "opera"); if (place == PIDGIN_BROWSER_NEW_WINDOW) @@ -1405,28 +1405,28 @@ pidgin_notify_uri(const char *uri) */ argv = g_slist_append(argv, uri_escaped); - } else if (!strcmp(web_browser, "google-chrome")) { + } else if (purple_strequal(web_browser, "google-chrome")) { /* Google Chrome doesn't have command-line arguments that * control the opening of links from external calls. This is * controlled solely from a preference within Google Chrome. */ argv = g_slist_append(argv, "google-chrome"); argv = g_slist_append(argv, uri_escaped); - } else if (!strcmp(web_browser, "chrome")) { + } else if (purple_strequal(web_browser, "chrome")) { /* Chromium doesn't have command-line arguments that control * the opening of links from external calls. This is controlled * solely from a preference within Chromium. */ argv = g_slist_append(argv, "chrome"); argv = g_slist_append(argv, uri_escaped); - } else if (!strcmp(web_browser, "chromium-browser")) { + } else if (purple_strequal(web_browser, "chromium-browser")) { /* Chromium doesn't have command-line arguments that control the * opening of links from external calls. This is controlled * solely from a preference within Chromium. */ argv = g_slist_append(argv, "chromium-browser"); argv = g_slist_append(argv, uri_escaped); - } else if (!strcmp(web_browser, "custom")) { + } else if (purple_strequal(web_browser, "custom")) { GError *error = NULL; const char *usercmd_command; gint usercmd_argc, i; @@ -1712,7 +1712,7 @@ pidgin_create_notification_dialog(PidginNotifyType type) gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); gtk_misc_set_alignment(GTK_MISC(label), 0, 0); gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(vbox), + gtk_box_pack_start(GTK_BOX(vbox), pidgin_make_scrollable(spec_dialog->treeview, GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, -1, -1), TRUE, TRUE, 2); diff --git a/pidgin/gtkplugin.h b/pidgin/gtkplugin.h index 8b07be4f12..ba4f350216 100644 --- a/pidgin/gtkplugin.h +++ b/pidgin/gtkplugin.h @@ -51,7 +51,7 @@ struct _PidginPluginUiInfo #define PIDGIN_IS_PIDGIN_PLUGIN(plugin) \ ((plugin)->info != NULL && (plugin)->info->ui_info != NULL && \ - !strcmp((plugin)->info->ui_requirement, PIDGIN_PLUGIN_TYPE)) + purple_strequal((plugin)->info->ui_requirement, PIDGIN_PLUGIN_TYPE)) #define PIDGIN_PLUGIN_UI_INFO(plugin) \ ((PidginPluginUiInfo *)(plugin)->info->ui_info) diff --git a/pidgin/gtkpounce.c b/pidgin/gtkpounce.c index 99a1b5e623..9ee9e961a9 100644 --- a/pidgin/gtkpounce.c +++ b/pidgin/gtkpounce.c @@ -175,7 +175,7 @@ pounce_test_sound(GtkWidget *w, GtkWidget *entry) filename = gtk_entry_get_text(GTK_ENTRY(entry)); - if (filename != NULL && *filename != '\0' && strcmp(filename, _("(default)"))) + if (filename != NULL && *filename != '\0' && !purple_strequal(filename, _("(default)"))) purple_sound_play_file(filename, NULL); else purple_sound_play_event(PURPLE_SOUND_POUNCE_DEFAULT, NULL); @@ -315,7 +315,7 @@ save_pounce_cb(GtkWidget *w, PidginPounceDialog *dialog) message = NULL; } if (*command == '\0') command = NULL; - if (*sound == '\0' || !strcmp(sound, _("(default)"))) sound = NULL; + if (*sound == '\0' || purple_strequal(sound, _("(default)"))) sound = NULL; /* If the pounce has already been triggered, let's pretend it is a new one */ if (dialog->pounce != NULL diff --git a/pidgin/gtkprefs.c b/pidgin/gtkprefs.c index a42cf93219..1e8dbfe18f 100644 --- a/pidgin/gtkprefs.c +++ b/pidgin/gtkprefs.c @@ -262,7 +262,7 @@ pidgin_prefs_dropdown_from_list(GtkWidget *box, const gchar *title, if ((type == PURPLE_PREF_INT && stored_int == int_value) || (type == PURPLE_PREF_STRING && stored_str != NULL && - !strcmp(stored_str, str_value)) || + purple_strequal(stored_str, str_value)) || (type == PURPLE_PREF_BOOLEAN && (purple_prefs_get_bool(key) == GPOINTER_TO_INT(menuitems->data)))) { @@ -415,7 +415,7 @@ pref_sound_generate_markup(void) do { gtk_tree_model_get(GTK_TREE_MODEL(prefs_sound_themes), &iter, 2, &name, -1); - print_custom = customized && name && g_str_equal(current_theme, name); + print_custom = customized && name && purple_strequal(current_theme, name); if (!name || *name == '\0') { g_free(name); @@ -504,7 +504,7 @@ prefs_set_active_theme_combo(GtkWidget *combo_box, GtkListStore *store, const gc do { gtk_tree_model_get(GTK_TREE_MODEL(store), &iter, 2, &theme, -1); - if (g_str_equal(current_theme, theme)) { + if (purple_strequal(current_theme, theme)) { gtk_combo_box_set_active_iter(GTK_COMBO_BOX(combo_box), &iter); unset = FALSE; } @@ -667,7 +667,7 @@ theme_install_theme(char *path, struct theme_info *info) /* Just to be safe */ g_strchomp(path); - if ((is_smiley_theme = g_str_equal(info->type, "smiley"))) + if ((is_smiley_theme = purple_strequal(info->type, "smiley"))) destdir = g_build_filename(purple_user_dir(), "smileys", NULL); else destdir = g_build_filename(purple_user_dir(), "themes", "temp", NULL); @@ -1016,7 +1016,7 @@ prefs_set_blist_theme_cb(GtkComboBox *combo_box, gpointer user_data) gtk_tree_model_get(GTK_TREE_MODEL(prefs_blist_themes), &iter, 2, &name, -1); - if(!name || !g_str_equal(name, "")) + if(!name || *name) theme = PIDGIN_BLIST_THEME(purple_theme_manager_find_theme(name, "blist")); g_free(name); @@ -1037,7 +1037,7 @@ prefs_set_status_icon_theme_cb(GtkComboBox *combo_box, gpointer user_data) gtk_tree_model_get(GTK_TREE_MODEL(prefs_status_icon_themes), &iter, 2, &name, -1); - if(!name || !g_str_equal(name, "")) + if(!name || *name) theme = PIDGIN_STATUS_ICON_THEME(purple_theme_manager_find_theme(name, "status-icon")); g_free(name); @@ -1633,7 +1633,7 @@ proxy_changed_cb(const char *name, PurplePrefType type, GtkWidget *frame = data; const char *proxy = value; - if (strcmp(proxy, "none") && strcmp(proxy, "envvar")) + if (!purple_strequal(proxy, "none") && !purple_strequal(proxy, "envvar")) gtk_widget_show_all(frame); else gtk_widget_hide(frame); @@ -1890,11 +1890,11 @@ get_available_browsers(void) browsers = g_list_prepend(browsers, possible_browsers[i].command); browsers = g_list_prepend(browsers, (gpointer)_(possible_browsers[i].name)); - if(browser_setting && !strcmp(possible_browsers[i].command, browser_setting)) + if(browser_setting && purple_strequal(possible_browsers[i].command, browser_setting)) browser_setting = NULL; /* If xdg-open is valid, prefer it over gnome-open and skip forward */ - if(!strcmp(possible_browsers[i].command, "xdg-open")) { - if (browser_setting && !strcmp("gnome-open", browser_setting)) { + if(purple_strequal(possible_browsers[i].command, "xdg-open")) { + if (purple_strequal("gnome-open", browser_setting)) { purple_prefs_set_string(PIDGIN_PREFS_ROOT "/browsers/browser", possible_browsers[i].command); browser_setting = NULL; } @@ -1916,7 +1916,7 @@ browser_changed1_cb(const char *name, PurplePrefType type, GtkWidget *hbox = data; const char *browser = value; - gtk_widget_set_sensitive(hbox, strcmp(browser, "custom")); + gtk_widget_set_sensitive(hbox, !purple_strequal(browser, "custom")); } static void @@ -1926,7 +1926,7 @@ browser_changed2_cb(const char *name, PurplePrefType type, GtkWidget *hbox = data; const char *browser = value; - gtk_widget_set_sensitive(hbox, !strcmp(browser, "custom")); + gtk_widget_set_sensitive(hbox, purple_strequal(browser, "custom")); } static GtkWidget * @@ -1999,7 +1999,7 @@ browser_page(void) gtk_size_group_add_widget(sg, label); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); - if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/browsers/browser"), "custom")) + if (purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/browsers/browser"), "custom")) gtk_widget_set_sensitive(hbox, FALSE); purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/browsers/browser", browser_changed1_cb, hbox); @@ -2011,7 +2011,7 @@ browser_page(void) g_signal_connect(G_OBJECT(entry), "focus-out-event", G_CALLBACK(manual_browser_set), NULL); hbox = pidgin_add_widget_to_vbox(GTK_BOX(vbox), _("_Manual:\n(%s for URL)"), sg, entry, TRUE, NULL); - if (strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/browsers/browser"), "custom")) + if (!purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/browsers/browser"), "custom")) gtk_widget_set_sensitive(hbox, FALSE); purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/browsers/browser", browser_changed2_cb, hbox); @@ -2236,7 +2236,7 @@ sound_changed1_cb(const char *name, PurplePrefType type, GtkWidget *hbox = data; const char *method = value; - gtk_widget_set_sensitive(hbox, !strcmp(method, "custom")); + gtk_widget_set_sensitive(hbox, purple_strequal(method, "custom")); } static void @@ -2246,7 +2246,7 @@ sound_changed2_cb(const char *name, PurplePrefType type, GtkWidget *vbox = data; const char *method = value; - gtk_widget_set_sensitive(vbox, strcmp(method, "none")); + gtk_widget_set_sensitive(vbox, !purple_strequal(method, "none")); } #endif /* !_WIN32 */ @@ -2259,9 +2259,9 @@ sound_changed3_cb(const char *name, PurplePrefType type, const char *method = value; gtk_widget_set_sensitive(hbox, - !strcmp(method, "automatic") || - !strcmp(method, "alsa") || - !strcmp(method, "esd")); + purple_strequal(method, "automatic") || + purple_strequal(method, "alsa") || + purple_strequal(method, "esd")); } #endif /* USE_GSTREAMER */ @@ -2440,7 +2440,7 @@ mute_changed_cb(const char *pref_name, GtkToggleButton *button = data; gboolean muted = GPOINTER_TO_INT(val); - g_return_if_fail(!strcmp (pref_name, PIDGIN_PREFS_ROOT "/sound/mute")); + g_return_if_fail(purple_strequal (pref_name, PIDGIN_PREFS_ROOT "/sound/mute")); /* Block the handler that re-sets the preference. */ g_signal_handlers_block_matched(button, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, (gpointer)pref_name); @@ -2509,7 +2509,7 @@ sound_page(void) purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/sound/method", sound_changed1_cb, hbox); gtk_widget_set_sensitive(hbox, - !strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), + purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), "custom")); #endif /* _WIN32 */ @@ -2545,7 +2545,7 @@ sound_page(void) #ifndef _WIN32 gtk_widget_set_sensitive(vbox, - strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), "none")); + !purple_strequal(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), "none")); purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/sound/method", sound_changed2_cb, vbox); #endif @@ -2854,7 +2854,7 @@ smiley_theme_pref_cb(const char *name, PurplePrefType type, for (themes = smiley_themes; themes; themes = themes->next) { struct smiley_theme *smile = themes->data; - if (smile->name && strcmp(themename, smile->name) == 0) { + if (smile->name && purple_strequal(themename, smile->name)) { pidgin_themes_load_smiley_theme(smile->path, TRUE); break; } @@ -2932,7 +2932,7 @@ pidgin_prefs_update_old(void) /* this string pref moved into the core, try to be friendly */ purple_prefs_rename(PIDGIN_PREFS_ROOT "/idle/reporting_method", "/purple/away/idle_reporting"); if ((str = purple_prefs_get_string("/purple/away/idle_reporting")) && - strcmp(str, "gaim") == 0) + purple_strequal(str, "gaim")) purple_prefs_set_string("/purple/away/idle_reporting", "purple"); /* Remove some no-longer-used prefs */ diff --git a/pidgin/gtkrequest.c b/pidgin/gtkrequest.c index f9309d9f3f..397e09adfa 100644 --- a/pidgin/gtkrequest.c +++ b/pidgin/gtkrequest.c @@ -133,7 +133,7 @@ input_response_cb(GtkDialog *dialog, gint id, PidginRequestData *data) gtk_text_buffer_get_start_iter(buffer, &start_iter); gtk_text_buffer_get_end_iter(buffer, &end_iter); - if ((data->u.input.hint != NULL) && (!strcmp(data->u.input.hint, "html"))) + if (purple_strequal(data->u.input.hint, "html")) multiline_value = gtk_imhtml_get_markup(GTK_IMHTML(data->u.input.entry)); else multiline_value = gtk_text_buffer_get_text(buffer, &start_iter, &end_iter, @@ -289,7 +289,7 @@ destroy_multifield_cb(GtkWidget *dialog, GdkEvent *event, #define STOCK_ITEMIZE(r, l) \ - if (!strcmp((r), text)) \ + if (purple_strequal((r), text)) \ return (l); static const char * @@ -403,7 +403,7 @@ pidgin_request_input(const char *title, const char *primary, gtk_widget_show_all(hbox); - if ((data->u.input.hint != NULL) && (!strcmp(data->u.input.hint, "html"))) { + if (purple_strequal(data->u.input.hint, "html")) { GtkWidget *frame; /* imhtml */ @@ -435,7 +435,7 @@ pidgin_request_input(const char *title, const char *primary, if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/conversations/spellcheck")) pidgin_setup_gtkspell(GTK_TEXT_VIEW(entry)); - gtk_box_pack_start(GTK_BOX(vbox), + gtk_box_pack_start(GTK_BOX(vbox), pidgin_make_scrollable(entry, GTK_POLICY_NEVER, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, 320, 130), TRUE, TRUE, 0); } @@ -809,7 +809,7 @@ setup_entry_field(GtkWidget *entry, PurpleRequestField *field) purple_request_field_is_visible(fld)) { const char *type_hint = purple_request_field_get_type_hint(fld); - if (type_hint != NULL && strcmp(type_hint, "account") == 0) + if (purple_strequal(type_hint, "account")) { optmenu = GTK_WIDGET(purple_request_field_get_ui_data(fld)); if (optmenu == NULL) { @@ -820,7 +820,7 @@ setup_entry_field(GtkWidget *entry, PurpleRequestField *field) } } } - pidgin_setup_screenname_autocomplete_with_filter(entry, optmenu, pidgin_screenname_autocomplete_default_filter, GINT_TO_POINTER(!strcmp(type_hint, "screenname-all"))); + pidgin_setup_screenname_autocomplete_with_filter(entry, optmenu, pidgin_screenname_autocomplete_default_filter, GINT_TO_POINTER(purple_strequal(type_hint, "screenname-all"))); } } } @@ -1260,8 +1260,8 @@ pidgin_request_fields(const char *title, const char *primary, GtkWidget *hbox_for_spacing, *vbox_for_spacing; hbox_for_spacing = gtk_hbox_new(FALSE, PIDGIN_HIG_BORDER); - gtk_box_pack_start(GTK_BOX(vbox), - pidgin_make_scrollable(hbox_for_spacing, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC, GTK_SHADOW_NONE, -1, 200), + gtk_box_pack_start(GTK_BOX(vbox), + pidgin_make_scrollable(hbox_for_spacing, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC, GTK_SHADOW_NONE, -1, 200), TRUE, TRUE, 0); gtk_widget_show(hbox_for_spacing); diff --git a/pidgin/gtksavedstatuses.c b/pidgin/gtksavedstatuses.c index 923d42188e..adfb2938bf 100644 --- a/pidgin/gtksavedstatuses.c +++ b/pidgin/gtksavedstatuses.c @@ -156,7 +156,7 @@ status_window_find_savedstatus(GtkTreeIter *iter, const char *title) do { gtk_tree_model_get(model, iter, STATUS_WINDOW_COLUMN_TITLE, &cur, -1); - if (!strcmp(title, cur)) + if (purple_strequal(title, cur)) { g_free(cur); return TRUE; @@ -723,7 +723,7 @@ status_editor_ok_cb(GtkButton *button, gpointer user_data) */ if (((button == dialog->saveanduse_button) || (button == dialog->save_button)) && (purple_savedstatus_find(title) != NULL) && - ((dialog->original_title == NULL) || (strcmp(title, dialog->original_title)))) + ((dialog->original_title == NULL) || (!purple_strequal(title, dialog->original_title)))) { purple_notify_error(status_window, NULL, _("Title already in use. You must " "choose a unique title."), NULL); @@ -761,7 +761,7 @@ status_editor_ok_cb(GtkButton *button, gpointer user_data) else { /* Modify the old status */ - if (strcmp(title, dialog->original_title)) + if (!purple_strequal(title, dialog->original_title)) purple_savedstatus_set_title(saved_status, title); purple_savedstatus_set_type(saved_status, type); } @@ -1185,7 +1185,7 @@ pidgin_status_editor_show(gboolean edit, PurpleSavedStatus *saved_status) dialog->treeview = gtk_tree_view_new_with_model(GTK_TREE_MODEL(dialog->model)); gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(dialog->treeview), TRUE); gtk_widget_set_size_request(dialog->treeview, -1, 150); - gtk_box_pack_start(GTK_BOX(dbox), + gtk_box_pack_start(GTK_BOX(dbox), pidgin_make_scrollable(dialog->treeview, GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, -1, -1), TRUE, TRUE, 0); @@ -1531,7 +1531,7 @@ edit_substatus(StatusEditor *status_editor, PurpleAccount *account) STATUS_COLUMN_STATUS_ID, id, STATUS_COLUMN_STATUS_NAME, name, -1); - if ((status_id != NULL) && !strcmp(status_id, id)) + if ((status_id != NULL) && purple_strequal(status_id, id)) { gtk_combo_box_set_active_iter(GTK_COMBO_BOX(combo), &iter); select = TRUE; diff --git a/pidgin/gtksmiley.c b/pidgin/gtksmiley.c index 2ea41edc14..f0093b8657 100644 --- a/pidgin/gtksmiley.c +++ b/pidgin/gtksmiley.c @@ -151,7 +151,7 @@ void pidgin_smiley_del_from_list(PurpleSmiley *smiley) for (; list; list = list->next) { gtksmiley = (GtkIMHtmlSmiley*)list->data; - if (strcmp(gtksmiley->smile, purple_smiley_get_shortcut(smiley))) + if (!purple_strequal(gtksmiley->smile, purple_smiley_get_shortcut(smiley))) continue; gtk_imhtml_smiley_destroy(gtksmiley); diff --git a/pidgin/gtksound.c b/pidgin/gtksound.c index 6bd228213b..8d334da19e 100644 --- a/pidgin/gtksound.c +++ b/pidgin/gtksound.c @@ -445,9 +445,9 @@ pidgin_sound_play_file(const char *filename) method = purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"); - if (!strcmp(method, "none")) { + if (purple_strequal(method, "none")) { return; - } else if (!strcmp(method, "beep")) { + } else if (purple_strequal(method, "beep")) { gdk_beep(); return; } @@ -458,7 +458,7 @@ pidgin_sound_play_file(const char *filename) } #ifndef _WIN32 - if (!strcmp(method, "custom")) { + if (purple_strequal(method, "custom")) { const char *sound_cmd; char *command; char *esc_filename; @@ -511,13 +511,13 @@ pidgin_sound_play_file(const char *filename) if (gst_init_failed) /* Perhaps do gdk_beep instead? */ return; volume = (float)(CLAMP(purple_prefs_get_int(PIDGIN_PREFS_ROOT "/sound/volume"),0,100)) / 50; - if (!strcmp(method, "automatic")) { + if (purple_strequal(method, "automatic")) { sink = gst_element_factory_make("gconfaudiosink", "sink"); } #ifndef _WIN32 - else if (!strcmp(method, "esd")) { + else if (purple_strequal(method, "esd")) { sink = gst_element_factory_make("esdsink", "sink"); - } else if (!strcmp(method, "alsa")) { + } else if (purple_strequal(method, "alsa")) { sink = gst_element_factory_make("alsasink", "sink"); } #endif @@ -526,7 +526,7 @@ pidgin_sound_play_file(const char *filename) return; } - if (strcmp(method, "automatic") != 0 && !sink) { + if (!purple_strequal(method, "automatic") && !sink) { purple_debug_error("sound", "Unable to create GStreamer audiosink.\n"); return; } diff --git a/pidgin/gtkstatusbox.c b/pidgin/gtkstatusbox.c index 97b93d2c66..a290c66e75 100644 --- a/pidgin/gtkstatusbox.c +++ b/pidgin/gtkstatusbox.c @@ -883,7 +883,7 @@ status_menu_refresh_iter(PidginStatusBox *status_box, gboolean status_changed) TEXT_COLUMN, &name, -1); if (!purple_savedstatus_has_substatuses(saved_status) - || !strcmp(name, acct_status_name)) + || purple_strequal(name, acct_status_name)) { /* Found! */ path = gtk_tree_model_get_path(GTK_TREE_MODEL(status_box->dropdown_store), &iter); @@ -1019,7 +1019,7 @@ static PurpleAccount* check_active_accounts_for_identical_statuses(void) PurpleAccount *acct2 = iter->data; GList *s1, *s2; - if (!g_str_equal(prpl1, purple_account_get_protocol_id(acct2))) { + if (!purple_strequal(prpl1, purple_account_get_protocol_id(acct2))) { acct1 = NULL; break; } @@ -1030,8 +1030,8 @@ static PurpleAccount* check_active_accounts_for_identical_statuses(void) PurpleStatusType *st1 = s1->data, *st2 = s2->data; /* TODO: Are these enough to consider the statuses identical? */ if (purple_status_type_get_primitive(st1) != purple_status_type_get_primitive(st2) - || strcmp(purple_status_type_get_id(st1), purple_status_type_get_id(st2)) - || strcmp(purple_status_type_get_name(st1), purple_status_type_get_name(st2))) { + || !purple_strequal(purple_status_type_get_id(st1), purple_status_type_get_id(st2)) + || !purple_strequal(purple_status_type_get_name(st1), purple_status_type_get_name(st2))) { acct1 = NULL; break; } @@ -2383,7 +2383,7 @@ activate_currently_selected_status(PidginStatusBox *status_box) acct_status_type = find_status_type_by_index(status_box->token_status_account, active); id = purple_status_type_get_id(acct_status_type); - if (g_str_equal(id, purple_status_get_id(status)) && + if (purple_strequal(id, purple_status_get_id(status)) && purple_strequal(message, purple_status_get_attr_string(status, "message"))) { /* Selected status and previous status is the same */ @@ -2483,7 +2483,7 @@ activate_currently_selected_status(PidginStatusBox *status_box) status_type = find_status_type_by_index(status_box->account, active); id = purple_status_type_get_id(status_type); - if (g_str_equal(id, purple_status_get_id(status)) && + if (purple_strequal(id, purple_status_get_id(status)) && purple_strequal(message, purple_status_get_attr_string(status, "message"))) { /* Selected status and previous status is the same */ diff --git a/pidgin/gtkthemes.c b/pidgin/gtkthemes.c index d15040406a..8fcfc6d8cf 100644 --- a/pidgin/gtkthemes.c +++ b/pidgin/gtkthemes.c @@ -44,7 +44,7 @@ gboolean pidgin_themes_smileys_disabled() if (!current_smiley_theme) return 1; - return strcmp(current_smiley_theme->name, "none") == 0; + return purple_strequal(current_smiley_theme->name, "none"); } static void @@ -99,7 +99,7 @@ void pidgin_themes_remove_smiley_theme(const char *file) /* Find theme in themes list and remove it */ for (iter = smiley_themes ; iter ; iter = iter->next) { theme = ((struct smiley_theme *)(iter->data)); - if (!strcmp(theme->path, file)) + if (purple_strequal(theme->path, file)) break ; } if (iter) { @@ -129,7 +129,7 @@ static void _pidgin_themes_smiley_themeize(GtkWidget *imhtml, gboolean custom) gtk_imhtml_remove_smileys(GTK_IMHTML(imhtml)); list = current_smiley_theme->list; while (list) { - char *sml = !strcmp(list->sml, "default") ? NULL : list->sml; + char *sml = purple_strequal(list->sml, "default") ? NULL : list->sml; GSList *icons = list->smileys; while (icons) { gtk_imhtml_associate_smiley(GTK_IMHTML(imhtml), sml, icons->data); @@ -236,7 +236,7 @@ void pidgin_themes_load_smiley_theme(const char *file, gboolean load) while (lst) { struct smiley_theme *thm = lst->data; - if (!strcmp(thm->path, file)) { + if (purple_strequal(thm->path, file)) { theme = thm; break; } @@ -440,9 +440,9 @@ GSList *pidgin_themes_get_proto_smileys(const char *id) { proto = purple_find_prpl(id); while (list) { - if (!strcmp(list->sml, "default")) + if (purple_strequal(list->sml, "default")) def = list; - else if (proto && !strcmp(proto->info->name, list->sml)) + else if (proto && purple_strequal(proto->info->name, list->sml)) break; list = list->next; @@ -461,7 +461,7 @@ void pidgin_themes_init() for (l = smiley_themes; l; l = l->next) { struct smiley_theme *smile = l->data; - if (smile->name && strcmp(current_theme, smile->name) == 0) { + if (smile->name && purple_strequal(current_theme, smile->name)) { pidgin_themes_load_smiley_theme(smile->path, TRUE); break; } diff --git a/pidgin/gtkutils.c b/pidgin/gtkutils.c index e5a3565b71..8ae28e15b8 100644 --- a/pidgin/gtkutils.c +++ b/pidgin/gtkutils.c @@ -712,7 +712,7 @@ create_protocols_menu(const char *default_proto_id) g_object_unref(pixbuf); /* libpurple3 compatibility */ - if (g_strcmp0(default_proto_id, "prpl-gtalk") == 0) + if (purple_strequal(default_proto_id, "prpl-gtalk")) aop_menu->default_item = i; gtalk_name = NULL; @@ -727,7 +727,7 @@ create_protocols_menu(const char *default_proto_id) if (pixbuf) g_object_unref(pixbuf); - if (default_proto_id != NULL && !strcmp(plugin->info->id, default_proto_id)) + if (default_proto_id != NULL && purple_strequal(plugin->info->id, default_proto_id)) aop_menu->default_item = i; } @@ -1136,15 +1136,15 @@ pidgin_parse_x_im_contact(const char *msg, gboolean all_accounts, protoname = prpl_info->list_icon(account, NULL); - if (!strcmp(protoname, protocol)) + if (purple_strequal(protoname, protocol)) break; account = NULL; } /* Special case for AIM and ICQ */ - if (account == NULL && (!strcmp(protocol, "aim") || - !strcmp(protocol, "icq"))) + if (account == NULL && (purple_strequal(protocol, "aim") || + purple_strequal(protocol, "icq"))) { for (l = list; l != NULL; l = l->next) { @@ -1178,7 +1178,7 @@ pidgin_parse_x_im_contact(const char *msg, gboolean all_accounts, protoname = prpl_info->list_icon(account, NULL); - if (!strcmp(protoname, "aim") || !strcmp(protoname, "icq")) + if (purple_strequal(protoname, "aim") || purple_strequal(protoname, "icq")) break; account = NULL; @@ -1952,7 +1952,7 @@ add_buddyname_autocomplete_entry(GtkListStore *store, const char *buddy_alias, c /* There's no sense listing things like: 'xxx "xxx"' when the name and buddy alias match. */ - if (buddy_alias && strcmp(buddy_alias, buddyname)) { + if (buddy_alias && !purple_strequal(buddy_alias, buddyname)) { char *completion_entry = g_strdup_printf("%s \"%s\"", buddyname, buddy_alias); char *tmp2 = g_utf8_normalize(buddy_alias, -1, G_NORMALIZE_DEFAULT); @@ -1974,9 +1974,9 @@ add_buddyname_autocomplete_entry(GtkListStore *store, const char *buddy_alias, c /* There's no sense listing things like: 'xxx "xxx"' when the name and contact alias match. */ - if (contact_alias && strcmp(contact_alias, buddyname)) { + if (contact_alias && !purple_strequal(contact_alias, buddyname)) { /* We don't want duplicates when the contact and buddy alias match. */ - if (!buddy_alias || strcmp(contact_alias, buddy_alias)) { + if (!purple_strequal(contact_alias, buddy_alias)) { char *completion_entry = g_strdup_printf("%s \"%s\"", buddyname, contact_alias); char *tmp2 = g_utf8_normalize(contact_alias, -1, G_NORMALIZE_DEFAULT); @@ -2433,10 +2433,10 @@ pidgin_convert_buddy_icon(PurplePlugin *plugin, const char *path, size_t *len) purple_debug_info("buddyicon", "Converting buddy icon to %s\n", prpl_formats[i]); - if (g_str_equal(prpl_formats[i], "png")) { + if (purple_strequal(prpl_formats[i], "png")) { key = "compression"; value = "9"; - } else if (g_str_equal(prpl_formats[i], "jpeg")) { + } else if (purple_strequal(prpl_formats[i], "jpeg")) { sprintf(tmp_buf, "%u", quality); key = "quality"; value = tmp_buf; @@ -2477,7 +2477,7 @@ pidgin_convert_buddy_icon(PurplePlugin *plugin, const char *path, size_t *len) g_free(contents); - if (!g_str_equal(prpl_formats[i], "jpeg")) { + if (!purple_strequal(prpl_formats[i], "jpeg")) { /* File size was too big and we can't lower the quality, so skip to the next image type. */ break; @@ -3471,9 +3471,9 @@ open_dialog(GtkIMHtml *imhtml, GtkIMHtmlLink *link) str = url + sizeof("open://") - 1; - if (strcmp(str, "accounts") == 0) + if (purple_strequal(str, "accounts")) pidgin_accounts_window_show(); - else if (strcmp(str, "prefs") == 0) + else if (purple_strequal(str, "prefs")) pidgin_prefs_show(); else return FALSE; @@ -3531,7 +3531,7 @@ register_gnome_url_handlers(void) { g_free(err); err = NULL; - if (!strcmp(tmp2, "false\n")) + if (purple_strequal(tmp2, "false\n")) { g_free(tmp2); g_free(cmd); diff --git a/pidgin/pidginstock.c b/pidgin/pidginstock.c index bd50db6717..d8189b4f07 100644 --- a/pidgin/pidginstock.c +++ b/pidgin/pidginstock.c @@ -257,7 +257,7 @@ find_file(const char *dir, const char *base) if (base == NULL) return NULL; - if (!strcmp(dir, "pidgin")) + if (purple_strequal(dir, "pidgin")) filename = g_build_filename("pixmaps", "pidgin", base, NULL); else filename = g_build_filename("pixmaps", "pidgin", dir, base, NULL); diff --git a/pidgin/plugins/cap/cap.c b/pidgin/plugins/cap/cap.c index d5faffa23b..7e3f7a4ddc 100644 --- a/pidgin/plugins/cap/cap.c +++ b/pidgin/plugins/cap/cap.c @@ -96,7 +96,7 @@ static double generate_prediction_for(PurpleBuddy *buddy) { sta_id = purple_status_get_id(get_status_for(buddy)); - if(sta_id && !strcmp(sta_id, "offline")) { + if(purple_strequal(sta_id, "offline")) { /* This is kind of stupid, change it. */ if(prediction == 1.0f) prediction = 0.0f; @@ -621,7 +621,7 @@ static void insert_status_change_from_purple_status(CapStatistics *statistics, P /* It would seem that some protocols receive periodic updates of the buddies status. * Check to make sure the last status is not the same as current status to prevent * to many duplicated useless database entries. */ - if(strcmp(statistics->last_status_id, purple_status_get_id(status)) == 0) + if(purple_strequal(statistics->last_status_id, purple_status_get_id(status))) return; status_id = purple_status_get_id(status); diff --git a/pidgin/plugins/crazychat/cc_features.c b/pidgin/plugins/crazychat/cc_features.c index 0b8a800ca6..27781b7348 100644 --- a/pidgin/plugins/crazychat/cc_features.c +++ b/pidgin/plugins/crazychat/cc_features.c @@ -347,9 +347,9 @@ static gboolean mydraw(GtkWidget *widget, GdkEventExpose *event, struct cc_features *features = &instance->face; char *string = gtk_entry_get_text(GTK_COMBO(instance->model)->entry); - if (!strcmp(string, "Dog")) { + if (purple_strequal(string, "Dog")) { features->kind = 0; - } else if (!strcmp(string, "Shark")) { + } else if (purple_strequal(string, "Shark")) { features->kind = 1; } @@ -488,17 +488,17 @@ static void destroy_cb(GtkWidget *widget, struct crazychat *cc) static void material_set(GtkWidget *entry, guint8 *material) { char *string = gtk_entry_get_text(GTK_ENTRY(entry)); - if (!strcmp(string, "Red")) { + if (purple_strequal(string, "Red")) { *material = 0; - } else if (!strcmp(string, "Dark Brown")) { + } else if (purple_strequal(string, "Dark Brown")) { *material = 1; - } else if (!strcmp(string, "Light Brown")) { + } else if (purple_strequal(string, "Light Brown")) { *material = 2; - } else if (!strcmp(string, "White")) { + } else if (purple_strequal(string, "White")) { *material = 3; - } else if (!strcmp(string, "Green")) { + } else if (purple_strequal(string, "Green")) { *material = 4; - } else if (!strcmp(string, "Black")) { + } else if (purple_strequal(string, "Black")) { *material = 5; } } diff --git a/pidgin/plugins/crazychat/glm.c b/pidgin/plugins/crazychat/glm.c index 28c117ce47..ffcc94df60 100644 --- a/pidgin/plugins/crazychat/glm.c +++ b/pidgin/plugins/crazychat/glm.c @@ -160,7 +160,7 @@ glmFindGroup(GLMmodel* model, char* name) group = model->groups; while(group) { - if (!strcmp(name, group->name)) + if (purple_strequal(name, group->name)) break; group = group->next; } @@ -200,7 +200,7 @@ glmFindMaterial(GLMmodel* model, char* name) /* XXX doing a linear search on a string key'd list is pretty lame, but it works and is fast enough for now. */ for (i = 0; i < model->nummaterials; i++) { - if (!strcmp(model->materials[i].name, name)) + if (purple_strequal(model->materials[i].name, name)) goto found; } diff --git a/pidgin/plugins/disco/xmppdisco.c b/pidgin/plugins/disco/xmppdisco.c index 50bc368bdd..bdf52f5535 100644 --- a/pidgin/plugins/disco/xmppdisco.c +++ b/pidgin/plugins/disco/xmppdisco.c @@ -224,18 +224,18 @@ disco_service_type_from_identity(xmlnode *identity) if (!category) return XMPP_DISCO_SERVICE_TYPE_OTHER; - if (g_str_equal(category, "conference")) + if (purple_strequal(category, "conference")) return XMPP_DISCO_SERVICE_TYPE_CHAT; - else if (g_str_equal(category, "directory")) + else if (purple_strequal(category, "directory")) return XMPP_DISCO_SERVICE_TYPE_DIRECTORY; - else if (g_str_equal(category, "gateway")) + else if (purple_strequal(category, "gateway")) return XMPP_DISCO_SERVICE_TYPE_GATEWAY; - else if (g_str_equal(category, "pubsub")) { - if (!type || g_str_equal(type, "collection")) + else if (purple_strequal(category, "pubsub")) { + if (!type || purple_strequal(type, "collection")) return XMPP_DISCO_SERVICE_TYPE_PUBSUB_COLLECTION; - else if (g_str_equal(type, "leaf")) + else if (purple_strequal(type, "leaf")) return XMPP_DISCO_SERVICE_TYPE_PUBSUB_LEAF; - else if (g_str_equal(type, "service")) + else if (purple_strequal(type, "service")) return XMPP_DISCO_SERVICE_TYPE_OTHER; else { purple_debug_warning("xmppdisco", "Unknown pubsub type '%s'\n", type); @@ -285,7 +285,7 @@ got_info_cb(PurpleConnection *pc, const char *type, const char *id, if (!list->in_progress) goto out; - if (g_str_equal(type, "result") && + if (purple_strequal(type, "result") && (query = xmlnode_get_child(iq, "query"))) { xmlnode *identity = xmlnode_get_child(query, "identity"); XmppDiscoService *service; @@ -332,11 +332,11 @@ got_info_cb(PurpleConnection *pc, const char *type, const char *id, if (!(var = xmlnode_get_attrib(feature, "var"))) continue; - if (g_str_equal(var, NS_REGISTER)) + if (purple_strequal(var, NS_REGISTER)) service->flags |= XMPP_DISCO_REGISTER; - else if (g_str_equal(var, NS_DISCO_ITEMS)) + else if (purple_strequal(var, NS_DISCO_ITEMS)) service->flags |= XMPP_DISCO_BROWSE; - else if (g_str_equal(var, NS_MUC)) { + else if (purple_strequal(var, NS_MUC)) { service->flags |= XMPP_DISCO_BROWSE; service->type = XMPP_DISCO_SERVICE_TYPE_CHAT; } @@ -373,7 +373,7 @@ got_items_cb(PurpleConnection *pc, const char *type, const char *id, if (!list->in_progress) goto out; - if (g_str_equal(type, "result") && + if (purple_strequal(type, "result") && (query = xmlnode_get_child(iq, "query"))) { xmlnode *item; @@ -440,7 +440,7 @@ server_items_cb(PurpleConnection *pc, const char *type, const char *id, g_free(cb_data); --list->fetch_count; - if (g_str_equal(type, "result") && + if (purple_strequal(type, "result") && (query = xmlnode_get_child(iq, "query"))) { xmlnode *item; @@ -483,7 +483,7 @@ server_info_cb(PurpleConnection *pc, const char *type, const char *id, --list->fetch_count; - if (g_str_equal(type, "result") && + if (purple_strequal(type, "result") && (query = xmlnode_get_child(iq, "query"))) { xmlnode *feature; diff --git a/pidgin/plugins/gevolution/add_buddy_dialog.c b/pidgin/plugins/gevolution/add_buddy_dialog.c index 1404f94657..e2c20f2959 100644 --- a/pidgin/plugins/gevolution/add_buddy_dialog.c +++ b/pidgin/plugins/gevolution/add_buddy_dialog.c @@ -174,7 +174,7 @@ add_ims(GevoAddBuddyDialog *dialog, EContact *contact, const char *name, account = purple_connection_get_account(gc); - if (!strcmp(purple_account_get_protocol_id(account), id)) + if (purple_strequal(purple_account_get_protocol_id(account), id)) break; account = NULL; @@ -204,10 +204,10 @@ add_ims(GevoAddBuddyDialog *dialog, EContact *contact, const char *name, COLUMN_DATA, contact, -1); - if (!strcmp(purple_account_get_protocol_id(account), + if (purple_strequal(purple_account_get_protocol_id(account), purple_account_get_protocol_id(dialog->account)) && dialog->username != NULL && - !strcmp(account_name, dialog->username)) + purple_strequal(account_name, dialog->username)) { GtkTreeSelection *selection; @@ -508,8 +508,8 @@ gevo_add_buddy_dialog_show(PurpleAccount *account, const char *username, dialog->treeview = gtk_tree_view_new_with_model(GTK_TREE_MODEL(dialog->model)); gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(dialog->treeview), TRUE); - gtk_box_pack_start(GTK_BOX(vbox), - pidgin_make_scrollable(dialog->treeview, GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, -1, -1), + gtk_box_pack_start(GTK_BOX(vbox), + pidgin_make_scrollable(dialog->treeview, GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, -1, -1), TRUE, TRUE, 0); gtk_widget_show(dialog->treeview); diff --git a/pidgin/plugins/gevolution/assoc-buddy.c b/pidgin/plugins/gevolution/assoc-buddy.c index cbe5f908f8..349a7ae9ea 100644 --- a/pidgin/plugins/gevolution/assoc-buddy.c +++ b/pidgin/plugins/gevolution/assoc-buddy.c @@ -218,7 +218,7 @@ populate_treeview(GevoAssociateBuddyDialog *dialog, const gchar *uri) for (l = ims; l != NULL; l = l->next) { - if (!strcmp(l->data, dialog->buddy->name)) + if (purple_strequal(l->data, dialog->buddy->name)) { GtkTreeSelection *selection; @@ -430,7 +430,7 @@ gevo_associate_buddy_dialog_new(PurpleBuddy *buddy) /* Textview */ dialog->imhtml = gtk_imhtml_new(NULL, NULL); - gtk_container_add(GTK_CONTAINER(expander), + gtk_container_add(GTK_CONTAINER(expander), pidgin_make_scrollable(dialog->imhtml, GTK_POLICY_NEVER, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, -1, -1)); gtk_widget_show(dialog->imhtml); diff --git a/pidgin/plugins/gevolution/gevo-util.c b/pidgin/plugins/gevolution/gevo-util.c index 914f79e1d8..c122392889 100644 --- a/pidgin/plugins/gevolution/gevo-util.c +++ b/pidgin/plugins/gevolution/gevo-util.c @@ -99,15 +99,15 @@ gevo_prpl_get_field(PurpleAccount *account, PurpleBuddy *buddy) protocol_id = purple_account_get_protocol_id(account); - if (!strcmp(protocol_id, "prpl-aim")) + if (purple_strequal(protocol_id, "prpl-aim")) protocol_field = E_CONTACT_IM_AIM; - else if (!strcmp(protocol_id, "prpl-icq")) + else if (purple_strequal(protocol_id, "prpl-icq")) protocol_field = E_CONTACT_IM_ICQ; - else if (!strcmp(protocol_id, "prpl-jabber")) + else if (purple_strequal(protocol_id, "prpl-jabber")) protocol_field = E_CONTACT_IM_JABBER; - else if (!strcmp(protocol_id, "prpl-novell")) + else if (purple_strequal(protocol_id, "prpl-novell")) protocol_field = E_CONTACT_IM_GROUPWISE; - else if (!strcmp(protocol_id, "prpl-gg")) + else if (purple_strequal(protocol_id, "prpl-gg")) protocol_field = E_CONTACT_IM_GADUGADU; return protocol_field; diff --git a/pidgin/plugins/gevolution/gevolution.c b/pidgin/plugins/gevolution/gevolution.c index 439ef3c4c1..c0962a914d 100644 --- a/pidgin/plugins/gevolution/gevolution.c +++ b/pidgin/plugins/gevolution/gevolution.c @@ -90,7 +90,7 @@ update_ims_from_contact(EContact *contact, const char *name, PurpleAccount *account = purple_connection_get_account(gc); char *me; - if (strcmp(purple_account_get_protocol_id(account), prpl_id)) + if (!purple_strequal(purple_account_get_protocol_id(account), prpl_id)) continue; if (!purple_account_get_bool(account, "gevo-autoadd", FALSE)) @@ -100,7 +100,7 @@ update_ims_from_contact(EContact *contact, const char *name, for (l2 = ims; l2 != NULL; l2 = l2->next) { if (purple_find_buddy(account, l2->data) != NULL || - !strcmp(me, purple_normalize(account, l2->data))) + purple_strequal(me, purple_normalize(account, l2->data))) continue; gevo_add_buddy(account, _("Buddies"), l2->data, name); diff --git a/pidgin/plugins/gevolution/new_person_dialog.c b/pidgin/plugins/gevolution/new_person_dialog.c index 9d82771592..a24dae2a89 100644 --- a/pidgin/plugins/gevolution/new_person_dialog.c +++ b/pidgin/plugins/gevolution/new_person_dialog.c @@ -141,15 +141,15 @@ add_cb(GtkWidget *w, GevoNewPersonDialog *dialog) if (*email) e_contact_set(contact, E_CONTACT_EMAIL_1, (gpointer)email); - if (!strcmp(im_service, "prpl-aim")) + if (purple_strequal(im_service, "prpl-aim")) field = E_CONTACT_IM_AIM; - else if (!strcmp(im_service, "prpl-icq")) + else if (purple_strequal(im_service, "prpl-icq")) field = E_CONTACT_IM_ICQ; - else if (!strcmp(im_service, "prpl-jabber")) + else if (purple_strequal(im_service, "prpl-jabber")) field = E_CONTACT_IM_JABBER; - else if (!strcmp(im_service, "prpl-novell")) + else if (purple_strequal(im_service, "prpl-novell")) field = E_CONTACT_IM_GROUPWISE; - else if (!strcmp(im_service, "prpl-gg")) + else if (purple_strequal(im_service, "prpl-gg")) field = E_CONTACT_IM_GADUGADU; if (field > 0) diff --git a/pidgin/plugins/notify.c b/pidgin/plugins/notify.c index 1556f5a3b3..cd8554c23a 100644 --- a/pidgin/plugins/notify.c +++ b/pidgin/plugins/notify.c @@ -619,7 +619,7 @@ method_toggle_cb(GtkWidget *widget, gpointer data) purple_prefs_set_bool(pref, on); - if (!strcmp(data, "method_string")) { + if (purple_strequal(data, "method_string")) { GtkWidget *entry = g_object_get_data(G_OBJECT(widget), "title-entry"); gtk_widget_set_sensitive(entry, on); @@ -650,7 +650,7 @@ options_entry_cb(GtkWidget *widget, GdkEventFocus *evt, gpointer data) if (data == NULL) return FALSE; - if (!strcmp(data, "method_string")) { + if (purple_strequal(data, "method_string")) { purple_prefs_set_string("/plugins/gtk/X11/notify/title_string", gtk_entry_get_text(GTK_ENTRY(widget))); } diff --git a/pidgin/plugins/pidgininc.c b/pidgin/plugins/pidgininc.c index 7e03243371..7340e1df5c 100644 --- a/pidgin/plugins/pidgininc.c +++ b/pidgin/plugins/pidgininc.c @@ -34,7 +34,7 @@ reverse(PurpleAccount *account, char **who, char **message, l = strlen(*message); - if (!strcmp(*who, purple_account_get_username(account))) + if (purple_strequal(*who, purple_account_get_username(account))) return FALSE; for (i = 0; i < l/2; i++) { diff --git a/pidgin/plugins/pidginrc.c b/pidgin/plugins/pidginrc.c index 852fce0082..775a732706 100644 --- a/pidgin/plugins/pidginrc.c +++ b/pidgin/plugins/pidginrc.c @@ -113,7 +113,7 @@ make_gtkrc_string(void) if (purple_prefs_get_bool("/plugins/gtk/purplerc/set/gtk-font-name")) { const gchar *pref = purple_prefs_get_string("/plugins/gtk/purplerc/gtk-font-name"); - if (pref != NULL && strcmp(pref, "")) { + if (pref && *pref) { g_string_append_printf(style_string, "gtk-font-name = \"%s\"\n", pref); @@ -123,7 +123,7 @@ make_gtkrc_string(void) if (purple_prefs_get_bool("/plugins/gtk/purplerc/set/gtk-key-theme-name")) { const gchar *pref = purple_prefs_get_string("/plugins/gtk/purplerc/gtk-key-theme-name"); - if (pref != NULL && strcmp(pref, "")) { + if (pref && *pref) { g_string_append_printf(style_string, "gtk-key-theme-name = \"%s\"\n", pref); @@ -141,7 +141,7 @@ make_gtkrc_string(void) const gchar *pref; pref = purple_prefs_get_string(color_prefs[i]); - if (pref != NULL && strcmp(pref, "")) { + if (pref && *pref) { prefbase = g_path_get_basename(color_prefs[i]); g_string_append_printf(style_string, "\n\t%s = \"%s\"", @@ -180,7 +180,7 @@ make_gtkrc_string(void) const gchar *pref; pref = purple_prefs_get_string(font_prefs[i]); - if (pref != NULL && strcmp(pref, "")) { + if (pref && *pref) { prefbase = g_path_get_basename(font_prefs[i]); g_string_append_printf(style_string, "style \"%s_style\"\n{\n" @@ -276,7 +276,7 @@ purplerc_set_color(GtkWidget *widget, gpointer data) pref = purple_prefs_get_string(color_prefs[subscript]); - if (pref != NULL && strcmp(pref, "")) { + if (pref && *pref) { if (gdk_color_parse(pref, &color)) { #if GTK_CHECK_VERSION(2,14,0) gtk_color_selection_set_current_color(GTK_COLOR_SELECTION( @@ -337,7 +337,7 @@ purplerc_set_font(GtkWidget *widget, gpointer data) pref = purple_prefs_get_string(prefpath); - if (pref != NULL && strcmp(pref, "")) { + if (pref && *pref) { gtk_font_selection_dialog_set_font_name(GTK_FONT_SELECTION_DIALOG(font_dialog), pref); } diff --git a/pidgin/plugins/raw.c b/pidgin/plugins/raw.c index e349921398..337ea44c25 100644 --- a/pidgin/plugins/raw.c +++ b/pidgin/plugins/raw.c @@ -71,7 +71,7 @@ text_sent_cb(GtkEntry *entry) purple_debug_misc("raw", "prpl_id = %s\n", prpl_id); - if (strcmp(prpl_id, "prpl-toc") == 0) { + if (purple_strequal(prpl_id, "prpl-toc")) { int *a = (int *)gc->proto_data; unsigned short seqno = htons(a[1]++ & 0xffff); unsigned short len = htons(strlen(txt) + 1); @@ -81,12 +81,12 @@ text_sent_cb(GtkEntry *entry) write(*a, txt, ntohs(len)); purple_debug(PURPLE_DEBUG_MISC, "raw", "TOC C: %s\n", txt); - } else if (strcmp(prpl_id, "prpl-irc") == 0) { + } else if (purple_strequal(prpl_id, "prpl-irc")) { write(*(int *)gc->proto_data, txt, strlen(txt)); write(*(int *)gc->proto_data, "\r\n", 2); purple_debug(PURPLE_DEBUG_MISC, "raw", "IRC C: %s\n", txt); - } else if (strcmp(prpl_id, "prpl-jabber") == 0) { + } else if (purple_strequal(prpl_id, "prpl-jabber")) { jabber_send_raw((JabberStream *)gc->proto_data, txt, -1); } else { diff --git a/pidgin/plugins/relnot.c b/pidgin/plugins/relnot.c index 8d04aa3848..b4a90204fb 100644 --- a/pidgin/plugins/relnot.c +++ b/pidgin/plugins/relnot.c @@ -85,7 +85,7 @@ version_fetch_cb(PurpleUtilFetchUrlData *url_data, gpointer user_data, } } - if (strcmp(response_code, "200") != 0) { + if (!purple_strequal(response_code, "200")) { purple_debug_error("relnot", "Didn't recieve a HTTP status code of 200.\n"); return; } diff --git a/pidgin/plugins/spellchk.c b/pidgin/plugins/spellchk.c index 00b4c20f80..bc53f85525 100644 --- a/pidgin/plugins/spellchk.c +++ b/pidgin/plugins/spellchk.c @@ -237,10 +237,10 @@ substitute_word(gchar *word) gtk_tree_model_get_value(GTK_TREE_MODEL(model), &iter, BAD_COLUMN, &val1); bad = g_value_get_string(&val1); - if ((case_sensitive && !strcmp(bad, word)) || - (!case_sensitive && (!strcmp(bad, lowerword) || + if ((case_sensitive && purple_strequal(bad, word)) || + (!case_sensitive && (purple_strequal(bad, lowerword) || (!is_word_lowercase(bad) && - !strcmp((tmpbad = g_utf8_casefold(bad, -1)), foldedword))))) + purple_strequal((tmpbad = g_utf8_casefold(bad, -1)), foldedword))))) { GValue val2; const char *good; @@ -1865,7 +1865,7 @@ static void on_edited(GtkCellRendererText *cellrenderertext, val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(model), &iter, GPOINTER_TO_INT(data), &val); - if (strcmp(arg2, g_value_get_string(&val))) { + if (!purple_strequal(arg2, g_value_get_string(&val))) { gtk_list_store_set(model, &iter, GPOINTER_TO_INT(data), arg2, -1); save_list(); } @@ -1947,12 +1947,12 @@ static void list_add_new(void) * Otherwise, they overlap. */ if (g_value_get_boolean(&case_sensitive_val)) { - match = !strcmp(g_value_get_string(&bad_val), word); + match = purple_strequal(g_value_get_string(&bad_val), word); } else { char *bad = g_utf8_casefold(g_value_get_string(&bad_val), -1); - match = !strcmp(bad, tmpword); + match = purple_strequal(bad, tmpword); g_free(bad); } g_value_unset(&case_sensitive_val); @@ -1960,7 +1960,7 @@ static void list_add_new(void) else { char *bad = g_utf8_casefold(g_value_get_string(&bad_val), -1); - match = !strcmp(bad, tmpword); + match = purple_strequal(bad, tmpword); g_free(bad); } @@ -2231,8 +2231,8 @@ get_config_frame(PurplePlugin *plugin) gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(tree)), GTK_SELECTION_MULTIPLE); - gtk_box_pack_start(GTK_BOX(vbox), - pidgin_make_scrollable(tree, GTK_POLICY_NEVER, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, -1, -1), + gtk_box_pack_start(GTK_BOX(vbox), + pidgin_make_scrollable(tree, GTK_POLICY_NEVER, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, -1, -1), TRUE, TRUE, 0); gtk_widget_show(tree); diff --git a/pidgin/plugins/timestamp_format.c b/pidgin/plugins/timestamp_format.c index 5016875cb4..e2251fbaa6 100644 --- a/pidgin/plugins/timestamp_format.c +++ b/pidgin/plugins/timestamp_format.c @@ -84,12 +84,12 @@ static char *timestamp_cb_common(PurpleConversation *conv, tm = localtime(&t); if (show_date || - !strcmp(dates, "always") || - (conv != NULL && purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_CHAT && !strcmp(dates, "chats"))) + purple_strequal(dates, "always") || + (conv != NULL && purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_CHAT && purple_strequal(dates, "chats"))) { - if (g_str_equal(force, "force24")) + if (purple_strequal(force, "force24")) return g_strdup_printf("%s%s%s", parens ? "(" : "", purple_utf8_strftime("%Y-%m-%d %H:%M:%S", tm), parens ? ")" : ""); - else if (g_str_equal(force, "force12")) { + else if (purple_strequal(force, "force12")) { char *date = g_strdup_printf("%s", purple_utf8_strftime("%Y-%m-%d ", tm)); char *remtime = g_strdup_printf("%s", purple_utf8_strftime(":%M:%S %p", tm)); const char *hour = format_12hour_hour(tm); @@ -107,9 +107,9 @@ static char *timestamp_cb_common(PurpleConversation *conv, return g_strdup_printf("%s%s%s", parens ? "(" : "", purple_date_format_long(tm), parens ? ")" : ""); } - if (g_str_equal(force, "force24")) + if (purple_strequal(force, "force24")) return g_strdup_printf("%s%s%s", parens ? "(" : "", purple_utf8_strftime("%H:%M:%S", tm), parens ? ")" : ""); - else if (g_str_equal(force, "force12")) { + else if (purple_strequal(force, "force12")) { const char *hour = format_12hour_hour(tm); char *remtime = g_strdup_printf("%s", purple_utf8_strftime(":%M:%S %p", tm)); char *output = g_strdup_printf("%s%s%s%s", parens ? "(" : "", hour, remtime, parens ? ")" : ""); diff --git a/pidgin/plugins/vvconfig.c b/pidgin/plugins/vvconfig.c index 55dc7896bd..10cea48cbf 100644 --- a/pidgin/plugins/vvconfig.c +++ b/pidgin/plugins/vvconfig.c @@ -93,7 +93,7 @@ get_element_devices(const gchar *element_name) ret = g_list_prepend(ret, (gpointer)_("Default")); ret = g_list_prepend(ret, ""); - if (!strcmp(element_name, "<custom>") || (*element_name == '\0')) { + if (purple_strequal(element_name, "<custom>") || (*element_name == '\0')) { return g_list_reverse(ret); } @@ -210,7 +210,7 @@ device_changed_cb(const gchar *name, PurplePrefType type, for (; widgets; widgets = g_slist_next(widgets)) { const gchar *widget_name = gtk_widget_get_name(GTK_WIDGET(widgets->data)); - if (!strcmp(widget_name, name)) { + if (purple_strequal(widget_name, name)) { gchar *temp_str; gchar delimiters[3] = {0, 0, 0}; const gchar *text; @@ -366,7 +366,7 @@ create_video_src(PurpleMedia *media, ret = gst_element_factory_make(plugin, "vvconfig-videosrc"); if (device[0] != '\0') g_object_set(G_OBJECT(ret), "device", device, NULL); - if (!strcmp(plugin, "videotestsrc")) + if (purple_strequal(plugin, "videotestsrc")) g_object_set(G_OBJECT(ret), "is-live", 1, NULL); return ret; } @@ -409,7 +409,7 @@ create_video_sink(PurpleMedia *media, if (device[0] != '\0') g_object_set(G_OBJECT(ret), "device", device, NULL); - if (g_strcmp0(plugin, "autovideosink") == 0) { + if (purple_strequal(plugin, "autovideosink")) { g_signal_connect(ret, "child-added", G_CALLBACK(autovideosink_child_added_cb), NULL); } else { @@ -464,7 +464,7 @@ set_element_info_cond(PurpleMediaElementInfo *old_info, PurpleMediaElementInfo *new_info, const gchar *id) { gchar *element_id = purple_media_element_info_get_id(old_info); - if (!strcmp(element_id, id)) + if (purple_strequal(element_id, id)) purple_media_manager_set_active_element( purple_media_manager_get(), new_info); g_free(element_id); @@ -659,7 +659,7 @@ gst_bus_cb(GstBus *bus, GstMessage *msg, BusCbCtx *ctx) GstElement *src = GST_ELEMENT(GST_MESSAGE_SRC(msg)); gchar *name = gst_element_get_name(src); - if (!strcmp(name, "level")) { + if (purple_strequal(name, "level")) { gdouble percent; gdouble threshold; GstElement *valve; diff --git a/pidgin/plugins/xmppconsole.c b/pidgin/plugins/xmppconsole.c index 6fcd66ac91..6b07821e02 100644 --- a/pidgin/plugins/xmppconsole.c +++ b/pidgin/plugins/xmppconsole.c @@ -73,8 +73,8 @@ xmlnode_to_pretty_str(xmlnode *node, int *len, int depth) if (node->xmlns) { if ((!node->parent || !node->parent->xmlns || - strcmp(node->xmlns, node->parent->xmlns)) && - strcmp(node->xmlns, "jabber:client")) + !purple_strequal(node->xmlns, node->parent->xmlns)) && + !purple_strequal(node->xmlns, "jabber:client")) { char *xmlns = g_markup_escape_text(node->xmlns, -1); g_string_append_printf(text, @@ -451,14 +451,14 @@ static void presence_clicked_cb(GtkWidget *w, gpointer nul) to = gtk_entry_get_text(GTK_ENTRY(to_entry)); type = gtk_combo_box_get_active_text(GTK_COMBO_BOX(type_combo)); - if (!strcmp(type, "default")) + if (purple_strequal(type, "default")) type = ""; show = gtk_combo_box_get_active_text(GTK_COMBO_BOX(show_combo)); - if (!strcmp(show, "default")) + if (purple_strequal(show, "default")) show = ""; status = gtk_entry_get_text(GTK_ENTRY(status_entry)); priority = gtk_entry_get_text(GTK_ENTRY(priority_entry)); - if (!strcmp(priority, "0")) + if (purple_strequal(priority, "0")) priority = ""; stanza = g_strdup_printf("<presence %s%s%s id='console%x' %s%s%s>" @@ -770,7 +770,7 @@ create_console(PurplePluginAction *action) console->dropdown = gtk_combo_box_new_text(); for (connections = purple_connections_get_all(); connections; connections = connections->next) { PurpleConnection *gc = connections->data; - if (!strcmp(purple_account_get_protocol_id(purple_connection_get_account(gc)), "prpl-jabber")) { + if (purple_strequal(purple_account_get_protocol_id(purple_connection_get_account(gc)), "prpl-jabber")) { console->count++; console->accounts = g_list_append(console->accounts, gc); gtk_combo_box_append_text(GTK_COMBO_BOX(console->dropdown), @@ -787,7 +787,7 @@ create_console(PurplePluginAction *action) if (console->count == 0) gtk_imhtml_append_text(GTK_IMHTML(console->imhtml), _("<font color='#777777'>Not connected to XMPP</font>"), 0); - gtk_box_pack_start(GTK_BOX(vbox), + gtk_box_pack_start(GTK_BOX(vbox), pidgin_make_scrollable(console->imhtml, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC, GTK_SHADOW_ETCHED_IN, -1, -1), TRUE, TRUE, 0); |