pidgin/plugins/spellchk.c

branch
string-comparison-r2
changeset 38258
9a6551eba09c
parent 36256
a437550a9308
child 38259
c593fc9f5438
equal deleted inserted replaced
38257:1a294a6d2a57 38258:9a6551eba09c
235 g_value_unset(&val1); 235 g_value_unset(&val1);
236 236
237 gtk_tree_model_get_value(GTK_TREE_MODEL(model), &iter, BAD_COLUMN, &val1); 237 gtk_tree_model_get_value(GTK_TREE_MODEL(model), &iter, BAD_COLUMN, &val1);
238 bad = g_value_get_string(&val1); 238 bad = g_value_get_string(&val1);
239 239
240 if ((case_sensitive && !strcmp(bad, word)) || 240 if ((case_sensitive && purple_strequal(bad, word)) ||
241 (!case_sensitive && (!strcmp(bad, lowerword) || 241 (!case_sensitive && (purple_strequal(bad, lowerword) ||
242 (!is_word_lowercase(bad) && 242 (!is_word_lowercase(bad) &&
243 !strcmp((tmpbad = g_utf8_casefold(bad, -1)), foldedword))))) 243 purple_strequal((tmpbad = g_utf8_casefold(bad, -1)), foldedword)))))
244 { 244 {
245 GValue val2; 245 GValue val2;
246 const char *good; 246 const char *good;
247 247
248 g_free(tmpbad); 248 g_free(tmpbad);
1945 1945
1946 /* If they're both case-sensitive, then compare directly. 1946 /* If they're both case-sensitive, then compare directly.
1947 * Otherwise, they overlap. */ 1947 * Otherwise, they overlap. */
1948 if (g_value_get_boolean(&case_sensitive_val)) 1948 if (g_value_get_boolean(&case_sensitive_val))
1949 { 1949 {
1950 match = !strcmp(g_value_get_string(&bad_val), word); 1950 match = purple_strequal(g_value_get_string(&bad_val), word);
1951 } 1951 }
1952 else 1952 else
1953 { 1953 {
1954 char *bad = g_utf8_casefold(g_value_get_string(&bad_val), -1); 1954 char *bad = g_utf8_casefold(g_value_get_string(&bad_val), -1);
1955 match = !strcmp(bad, tmpword); 1955 match = purple_strequal(bad, tmpword);
1956 g_free(bad); 1956 g_free(bad);
1957 } 1957 }
1958 g_value_unset(&case_sensitive_val); 1958 g_value_unset(&case_sensitive_val);
1959 } 1959 }
1960 else 1960 else
1961 { 1961 {
1962 char *bad = g_utf8_casefold(g_value_get_string(&bad_val), -1); 1962 char *bad = g_utf8_casefold(g_value_get_string(&bad_val), -1);
1963 match = !strcmp(bad, tmpword); 1963 match = purple_strequal(bad, tmpword);
1964 g_free(bad); 1964 g_free(bad);
1965 } 1965 }
1966 1966
1967 if (match) { 1967 if (match) {
1968 g_value_unset(&bad_val); 1968 g_value_unset(&bad_val);
2229 gtk_tree_view_column_set_resizable(column, TRUE); 2229 gtk_tree_view_column_set_resizable(column, TRUE);
2230 gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column); 2230 gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);
2231 2231
2232 gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(tree)), 2232 gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(tree)),
2233 GTK_SELECTION_MULTIPLE); 2233 GTK_SELECTION_MULTIPLE);
2234 gtk_box_pack_start(GTK_BOX(vbox), 2234 gtk_box_pack_start(GTK_BOX(vbox),
2235 pidgin_make_scrollable(tree, GTK_POLICY_NEVER, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, -1, -1), 2235 pidgin_make_scrollable(tree, GTK_POLICY_NEVER, GTK_POLICY_ALWAYS, GTK_SHADOW_IN, -1, -1),
2236 TRUE, TRUE, 0); 2236 TRUE, TRUE, 0);
2237 gtk_widget_show(tree); 2237 gtk_widget_show(tree);
2238 2238
2239 hbox = gtk_hbutton_box_new(); 2239 hbox = gtk_hbutton_box_new();
2240 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 2240 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);

mercurial