Mercurial > pidgin
changeset 12600:e856f985a0b9
[gaim-migrate @ 14934]
Enable the extra warnings regardless of --enable-debug.
Enable FORTIFY_SOURCE regardless of --enable-debug, adding a --disable-fortify flag to configure.
Enable (well, stop disabling) the missing initializer warnings.
This leads to warnings with: GValue v = {0,}; that must be worked around.
Basically, instead of:
GValue v = {0,};
...
g_value_init(&v, G_TYPE_FOO); /* or other use of the GValue */
We'd need to do:
GValue v;
...
v.g_type = 0;
g_value_init(&v, G_TYPE_FOO); /* or other use of the GValue */
Fix several cases of missing initializers. I don't think any of these are bugs, but having this warning seems like a good idea. It might prevent us from making a mistake in the future.
While I was fixing missing initializers, I optimized substitute_simple_word in plugins/spellchk.c, in the same way as I did substitute_word before. Yes, I'm bad for committing these together.
Added a --enable-fatal-asserts flag to configure. As the name implies, this makes g_return_... guards fatal. This is a useful flag to run on a debug copy of Gaim. It will make it very clear if your changes have triggered one of these guards. It's also useful in detecting g_return_... abuse, which helps prevent crashes if Gaim is compiled with G_DISABLE_ASSERT defined.
committer: Tailor Script <tailor@pidgin.im>
line wrap: on
line diff
--- a/config.h.mingw Wed Dec 21 13:37:18 2005 +0000 +++ b/config.h.mingw Wed Dec 21 18:36:19 2005 +0000 @@ -25,6 +25,9 @@ language is requested. */ #define ENABLE_NLS 1 +/* Define to make assertions fatal (useful for debugging). */ +/* #undef GAIM_FATAL_ASSERTS */ + /* Define if plugins are enabled. */ #define GAIM_PLUGINS 1
--- a/configure.ac Wed Dec 21 13:37:18 2005 +0000 +++ b/configure.ac Wed Dec 21 18:36:19 2005 +0000 @@ -329,7 +329,7 @@ AM_CONDITIONAL(DYNAMIC_ZEPHYR, test "x$dynamic_zephyr" = "xyes") AC_ARG_ENABLE(audio, [ --disable-audio compile without libao/libaudiofile for sound playing],,enable_audio=yes) -AC_ARG_ENABLE(mono, [ --enable-mono compile with Mono runtime support],,enable_mono=no) +AC_ARG_ENABLE(mono, [ --enable-mono compile with Mono runtime support],,enable_mono=no) AC_ARG_ENABLE(plugins, [ --disable-plugins compile without plugin support],,enable_plugins=yes) AC_ARG_ENABLE(perl, [ --disable-perl compile without perl scripting],,enable_perl=yes) AC_ARG_ENABLE(tcl, [ --disable-tcl compile without Tcl scripting],,enable_tcl=yes) @@ -338,12 +338,14 @@ AC_ARG_WITH(tkconfig, [ --with-tkconfig=DIR directory containing tkConfig.sh]) AC_ARG_ENABLE(gtkspell, [ --disable-gtkspell compile without GtkSpell automatic spell checking],,enable_gtkspell=yes) AC_ARG_ENABLE(debug, [ --enable-debug compile with debugging support],,enable_debug=no) +AC_ARG_ENABLE(fatal-asserts, [ --enable-fatal-asserts make assertions fatal (useful for debugging)],,enable_fatal_asserts=no) dnl We know Gaim won't compile with deprecated APIs disabled. dnl We have no desire to support two different versions of the dnl same code when it's not necessary, so we're sticking with dnl the deprecated APIs in many cases. dnl This option is being left in case things change. dnl AC_ARG_ENABLE(deprecated, [ --disable-deprecated compile without deprecated API usage],,enable_deprecated=yes) +AC_ARG_ENABLE(fortify, [ --disable-fortify compile without FORTIFY_SOURCE support],,enable_fortify=yes) AC_ARG_ENABLE(screensaver, [ --disable-screensaver compile without X screensaver extension],,enable_xss=yes) AC_ARG_ENABLE(sm, [ --disable-sm compile without X session management support],,enable_sm=yes) AC_ARG_WITH(krb4, [ --with-krb4=PREFIX compile Zephyr plugin with Kerberos 4 support],kerberos="$withval",kerberos="no") @@ -353,72 +355,69 @@ AC_CHECK_HEADER(sys/utsname.h) AC_CHECK_FUNC(uname) -if test "$enable_debug" = yes ; then +if test "x$enable_debug" = "xyes" ; then AC_DEFINE(DEBUG, 1, [Define if debugging is enabled.]) +fi - if test "x$GCC" = "xyes"; then +if test "x$enable_fatal_asserts" = "xyes" ; then + AC_DEFINE(GAIM_FATAL_ASSERTS, 1, [Define to make assertions fatal (useful for debugging).]) +fi - dnl We enable -Wall later, regardless of --enable-debug. - dnl If it's set after the warning CFLAGS in the compiler invocation, it counteracts the -Wno... flags. - dnl This leads to warnings we don't want. - CFLAGS=`echo $CFLAGS |$sedpath 's/-Wall//'` +if test "x$enable_deprecated" = "xno"; then + DEBUG_CFLAGS="$DEBUG_CFLAGS -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED" +fi + +if test "x$GCC" = "xyes"; then + dnl We enable -Wall later. + dnl If it's set after the warning CFLAGS in the compiler invocation, it counteracts the -Wno... flags. + dnl This leads to warnings we don't want. + CFLAGS=`echo $CFLAGS |$sedpath 's/-Wall//'` - dnl ENABLE WARNINGS SUPPORTED BY THE VERSION OF GCC IN USE - dnl - dnl Future Possibilities - dnl - dnl Consider adding -Wbad-function-cast. - dnl This leads to spurious warnings using GPOINTER_TO_INT(), et al. directly on a function call. - dnl We'd need an intermediate variable. - dnl - dnl Consider adding -Wfloat-equal. - dnl This leads to warnings with Perl. - dnl Perhaps we could write ugly configure magic and pass -Wno-float-equal down to that subdirectory. - dnl On the other hand, it's probably actually broken, so maybe the Perl folks should fix that? - dnl - dnl Consider removing -Wno-sign-compare (from the -Wextra set) and fixing all those cases. - dnl This is likely non-trivial. - dnl - dnl Remove -Wno-missing-field-initializers (from the -Wextra set) - dnl This leads to warnings with: GValue v = {0,}; that must be worked around. - dnl Basically, instead of: - dnl GValue v = {0,}; - dnl ... - dnl g_value_init(&v, G_TYPE_FOO); - dnl We'd need to do: - dnl GValue v; - dnl ... - dnl v.g_type = 0; - dnl g_value_init(&v, G_TYPE_FOO); - dnl - for newflag in \ - "-Waggregate-return" \ - "-Wcast-align" \ - "-Wdeclaration-after-statement" \ - "-Werror-implicit-function-declaration" \ - "-Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wno-unused-parameter" \ - "-Winit-self" \ - "-Wmissing-declarations" \ - "-Wmissing-prototypes" \ - "-Wnested-externs" \ - "-Wpointer-arith" \ - "-Wundef" \ - ; do - orig_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $newflag" - AC_MSG_CHECKING(for $newflag option to gcc) - AC_TRY_COMPILE([], [ - int main() {return 0;} - ], [ - AC_MSG_RESULT(yes) - CFLAGS="$orig_CFLAGS" - DEBUG_CFLAGS="$DEBUG_CFLAGS $newflag" - ], [ - AC_MSG_RESULT(no) - CFLAGS="$orig_CFLAGS" - ]) - done + dnl ENABLE WARNINGS SUPPORTED BY THE VERSION OF GCC IN USE + dnl + dnl Future Possibilities + dnl + dnl Consider adding -Wbad-function-cast. + dnl This leads to spurious warnings using GPOINTER_TO_INT(), et al. directly on a function call. + dnl We'd need an intermediate variable. + dnl + dnl Consider adding -Wfloat-equal. + dnl This leads to warnings with Perl. + dnl Perhaps we could write ugly configure magic and pass -Wno-float-equal down to that subdirectory. + dnl On the other hand, it's probably actually broken, so maybe the Perl folks should fix that? + dnl + dnl Consider removing -Wno-sign-compare (from the -Wextra set) and fixing all those cases. + dnl This is likely non-trivial. + dnl + for newflag in \ + "-Waggregate-return" \ + "-Wcast-align" \ + "-Wdeclaration-after-statement" \ + "-Werror-implicit-function-declaration" \ + "-Wextra -Wno-sign-compare -Wno-unused-parameter" \ + "-Winit-self" \ + "-Wmissing-declarations" \ + "-Wmissing-prototypes" \ + "-Wnested-externs" \ + "-Wpointer-arith" \ + "-Wundef" \ + ; do + orig_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $newflag" + AC_MSG_CHECKING(for $newflag option to gcc) + AC_TRY_COMPILE([], [ + int main() {return 0;} + ], [ + AC_MSG_RESULT(yes) + CFLAGS="$orig_CFLAGS" + DEBUG_CFLAGS="$DEBUG_CFLAGS $newflag" + ], [ + AC_MSG_RESULT(no) + CFLAGS="$orig_CFLAGS" + ]) + done + if test "x$enable_fortify" = "xyes"; then AC_MSG_CHECKING(for FORTIFY_SOURCE support) AC_TRY_COMPILE([#include <features.h>], [ int main() { @@ -438,15 +437,8 @@ ], [ AC_MSG_RESULT(no) ]) - fi -fi -if test "x$enable_deprecated" = "xno"; then - DEBUG_CFLAGS="$DEBUG_CFLAGS -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED" -fi - -if test "x$GCC" = "xyes"; then DEBUG_CFLAGS="-Wall $DEBUG_CFLAGS" CFLAGS="-g $CFLAGS" fi @@ -1410,7 +1402,7 @@ dnl AC_CHECK_SIZEOF(short) AC_CHECK_FUNCS(snprintf connect) AC_SUBST(SASL_LIBS) -AC_ARG_ENABLE(cyrus-sasl, AC_HELP_STRING([--enable-cyrus-sasl], [enable Cyrus SASL support for jabberd (no)]), enable_cyrus_sasl=$enableval, enable_cyrus_sasl=no) +AC_ARG_ENABLE(cyrus-sasl, AC_HELP_STRING([--enable-cyrus-sasl], [enable Cyrus SASL support for jabberd]), enable_cyrus_sasl=$enableval, enable_cyrus_sasl=no) if test "x-$enable_cyrus_sasl" = "x-yes" ; then AC_CHECK_LIB(sasl2, sasl_client_init, [AC_DEFINE(HAVE_CYRUS_SASL, [1], [Define to 1 if Cyrus SASL is present]) SASL_LIBS=-"lsasl2"], [AC_ERROR(Cyrus SASL library not found)]) fi
--- a/plugins/docklet/docklet.c Wed Dec 21 13:37:18 2005 +0000 +++ b/plugins/docklet/docklet.c Wed Dec 21 18:36:19 2005 +0000 @@ -589,7 +589,8 @@ static GaimGtkPluginUiInfo ui_info = { - plugin_config_frame + plugin_config_frame, + 0 /* page_num (Reserved) */ }; static GaimPluginInfo info =
--- a/plugins/docklet/eggtrayicon.c Wed Dec 21 13:37:18 2005 +0000 +++ b/plugins/docklet/eggtrayicon.c Wed Dec 21 18:36:19 2005 +0000 @@ -79,7 +79,8 @@ NULL, /* class_data */ sizeof (EggTrayIcon), 0, /* n_preallocs */ - (GInstanceInitFunc) egg_tray_icon_init + (GInstanceInitFunc) egg_tray_icon_init, + NULL /* value_table */ }; our_type = g_type_register_static (GTK_TYPE_PLUG, "EggTrayIcon", &our_info, 0);
--- a/plugins/extplacement.c Wed Dec 21 13:37:18 2005 +0000 +++ b/plugins/extplacement.c Wed Dec 21 18:36:19 2005 +0000 @@ -116,7 +116,9 @@ } static GaimPluginUiInfo prefs_info = { - get_plugin_pref_frame + get_plugin_pref_frame, + 0, /* page_num (Reserved) */ + NULL /* frame (Reserved) */ }; static GaimPluginInfo info =
--- a/plugins/gaimrc.c Wed Dec 21 13:37:18 2005 +0000 +++ b/plugins/gaimrc.c Wed Dec 21 18:36:19 2005 +0000 @@ -545,7 +545,8 @@ static GaimGtkPluginUiInfo gaimrc_ui_info = { - gaimrc_get_config_frame + gaimrc_get_config_frame, + 0 /* page_num (Reserved) */ }; static GaimPluginInfo gaimrc_info =
--- a/plugins/gestures/gestures.c Wed Dec 21 13:37:18 2005 +0000 +++ b/plugins/gestures/gestures.c Wed Dec 21 18:36:19 2005 +0000 @@ -278,7 +278,8 @@ static GaimGtkPluginUiInfo ui_info = { - get_config_frame + get_config_frame, + 0 /* page_num (Reserved) */ }; static GaimPluginInfo info =
--- a/plugins/notify.c Wed Dec 21 13:37:18 2005 +0000 +++ b/plugins/notify.c Wed Dec 21 18:36:19 2005 +0000 @@ -824,7 +824,8 @@ static GaimGtkPluginUiInfo ui_info = { - get_config_frame + get_config_frame, + 0 /* page_num (Reserved) */ }; static GaimPluginInfo info =
--- a/plugins/spellchk.c Wed Dec 21 13:37:18 2005 +0000 +++ b/plugins/spellchk.c Wed Dec 21 18:36:19 2005 +0000 @@ -142,27 +142,34 @@ text = gtk_text_buffer_get_text(buffer, &start, &end, FALSE); if (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(model), &treeiter) && text) { - do{ - GValue val0 = {0, }; - GValue val1 = {0, }; - GValue val2 = {0, }; + do { + GValue val1; const gchar *bad; - const gchar *good; gchar *cursor; - gboolean word_only; glong char_pos; - gtk_tree_model_get_value(GTK_TREE_MODEL(model), &treeiter, BAD_COLUMN, &val0); - gtk_tree_model_get_value(GTK_TREE_MODEL(model), &treeiter, GOOD_COLUMN, &val1); - gtk_tree_model_get_value(GTK_TREE_MODEL(model), &treeiter, WORD_ONLY_COLUMN, &val2); + val1.g_type = 0; + gtk_tree_model_get_value(GTK_TREE_MODEL(model), &treeiter, WORD_ONLY_COLUMN, &val1); + if (g_value_get_boolean(&val1)) + { + g_value_unset(&val1); + continue; + } + g_value_unset(&val1); - bad = g_value_get_string(&val0); - good = g_value_get_string(&val1); - word_only = g_value_get_boolean(&val2); + gtk_tree_model_get_value(GTK_TREE_MODEL(model), &treeiter, BAD_COLUMN, &val1); + bad = g_value_get_string(&val1); /* using g_utf8_* to get /character/ offsets instead of byte offsets for buffer */ - if (!word_only && (cursor = g_strrstr(text, bad))) + if ((cursor = g_strrstr(text, bad))) { + GValue val2; + const gchar *good; + + val2.g_type = 0; + gtk_tree_model_get_value(GTK_TREE_MODEL(model), &treeiter, GOOD_COLUMN, &val2); + good = g_value_get_string(&val2); + char_pos = g_utf8_pointer_to_offset(text, cursor); gtk_text_buffer_get_iter_at_offset(buffer, &start, char_pos); gtk_text_buffer_get_iter_at_offset(buffer, &end, char_pos + g_utf8_strlen(bad, -1)); @@ -171,17 +178,14 @@ gtk_text_buffer_get_iter_at_offset(buffer, &start, char_pos); gtk_text_buffer_insert(buffer, &start, good, -1); - g_value_unset(&val0); - g_value_unset(&val1); g_value_unset(&val2); g_free(text); + g_value_unset(&val1); return TRUE; } - g_value_unset(&val0); g_value_unset(&val1); - g_value_unset(&val2); } while (gtk_tree_model_iter_next(GTK_TREE_MODEL(model), &treeiter)); } @@ -205,11 +209,11 @@ if (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(model), &iter)) { do { - GValue val1 = {0, }; + GValue val1; const char *bad; gchar *tmpbad = NULL; - gboolean word_only; + val1.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(model), &iter, WORD_ONLY_COLUMN, &val1); if (!g_value_get_boolean(&val1)) { g_value_unset(&val1); @@ -224,11 +228,12 @@ (!is_word_lowercase(bad) && !strcmp((tmpbad = g_utf8_casefold(bad, -1)), foldedword))) { - GValue val2 = {0, }; + GValue val2; const char *good; g_free(tmpbad); + val2.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(model), &iter, GOOD_COLUMN, &val2); good = g_value_get_string(&val2); @@ -1745,7 +1750,7 @@ gchar *path, gchar *arg2, gpointer data) { GtkTreeIter iter; - GValue val = {0, }; + GValue val; if (arg2[0] == '\0') { gdk_beep(); @@ -1753,6 +1758,7 @@ } g_return_if_fail(gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(model), &iter, path)); + 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))) { @@ -1788,9 +1794,10 @@ char *tmpword = g_utf8_casefold(gtk_entry_get_text(GTK_ENTRY(bad_entry)), -1); do { - GValue val0 = {0, }; + GValue val0; char *bad; + val0.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(model), &iter, BAD_COLUMN, &val0); bad = g_utf8_casefold(g_value_get_string(&val0), -1); @@ -1877,9 +1884,13 @@ if (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(model), &iter)) { do { - GValue val0 = {0, }; - GValue val1 = {0, }; - GValue val2 = {0, }; + GValue val0; + GValue val1; + GValue val2; + + val0.g_type = 0; + val1.g_type = 0; + val2.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(model), &iter, BAD_COLUMN, &val0); gtk_tree_model_get_value(GTK_TREE_MODEL(model), &iter, GOOD_COLUMN, &val1); @@ -2115,7 +2126,8 @@ static GaimGtkPluginUiInfo ui_info = { - get_config_frame + get_config_frame, + 0 /* page_num (Reserved) */ }; static GaimPluginInfo info =
--- a/plugins/statenotify.c Wed Dec 21 13:37:18 2005 +0000 +++ b/plugins/statenotify.c Wed Dec 21 18:36:19 2005 +0000 @@ -121,7 +121,9 @@ static GaimPluginUiInfo prefs_info = { - get_plugin_pref_frame + get_plugin_pref_frame, + 0, /* page_num (Reserved) */ + NULL /* frame (Reserved) */ }; static GaimPluginInfo info =
--- a/plugins/ticker/gtkticker.c Wed Dec 21 13:37:18 2005 +0000 +++ b/plugins/ticker/gtkticker.c Wed Dec 21 18:36:19 2005 +0000 @@ -65,7 +65,8 @@ NULL, sizeof(GtkTicker), 0, - (GInstanceInitFunc) gtk_ticker_init + (GInstanceInitFunc) gtk_ticker_init, + NULL }; ticker_type = g_type_register_static (GTK_TYPE_CONTAINER, "GtkTicker",
--- a/plugins/timestamp.c Wed Dec 21 13:37:18 2005 +0000 +++ b/plugins/timestamp.c Wed Dec 21 18:36:19 2005 +0000 @@ -257,7 +257,8 @@ static GaimGtkPluginUiInfo ui_info = { - get_config_frame + get_config_frame, + 0 /* page_num (Reserved) */ }; static GaimPluginInfo info =
--- a/src/gtkaccount.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkaccount.c Wed Dec 21 18:36:19 2005 +0000 @@ -1947,7 +1947,7 @@ GtkTreePath *source_row; GtkTreeIter iter; GaimAccount *account = NULL; - GValue val = {0}; + GValue val; ref = g_object_get_data(G_OBJECT(ctx), "gtk-tree-view-source-row"); source_row = gtk_tree_row_reference_get_path(ref); @@ -1957,6 +1957,7 @@ gtk_tree_model_get_iter(GTK_TREE_MODEL(dialog->model), &iter, source_row); + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(dialog->model), &iter, COLUMN_DATA, &val); @@ -2025,9 +2026,10 @@ GtkTreeIter iter; GaimAccount *account; - GValue val = {0}; + GValue val; gtk_tree_model_get_iter(GTK_TREE_MODEL(dialog->model), &iter, path); + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(dialog->model), &iter, COLUMN_DATA, &val);
--- a/src/gtkblist.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkblist.c Wed Dec 21 18:36:19 2005 +0000 @@ -294,12 +294,13 @@ { GtkTreeIter iter; GtkTreePath *path; - GValue val = {0,}; + GValue val; GaimBlistNode *node; path = gtk_tree_path_new_from_string (arg1); gtk_tree_model_get_iter (GTK_TREE_MODEL(gtkblist->treemodel), &iter, path); gtk_tree_path_free (path); + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); gtk_tree_view_set_enable_search (GTK_TREE_VIEW(gtkblist->treeview), TRUE); @@ -737,8 +738,9 @@ static void gtk_blist_row_expanded_cb(GtkTreeView *tv, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) { GaimBlistNode *node; - GValue val = {0,}; - + GValue val; + + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(gtkblist->treemodel), iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -750,8 +752,9 @@ static void gtk_blist_row_collapsed_cb(GtkTreeView *tv, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) { GaimBlistNode *node; - GValue val = {0,}; - + GValue val; + + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(gtkblist->treemodel), iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -766,10 +769,11 @@ static void gtk_blist_row_activated_cb(GtkTreeView *tv, GtkTreePath *path, GtkTreeViewColumn *col, gpointer data) { GaimBlistNode *node; GtkTreeIter iter; - GValue val = { 0, }; + GValue val; gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, path); + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -1076,7 +1080,7 @@ static gboolean gtk_blist_key_press_cb(GtkWidget *tv, GdkEventKey *event, gpointer data) { GaimBlistNode *node; - GValue val = { 0, }; + GValue val; GtkTreeIter iter; GtkTreeSelection *sel; @@ -1084,6 +1088,7 @@ if(!gtk_tree_selection_get_selected(sel, NULL, &iter)) return FALSE; + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -1309,7 +1314,7 @@ { GtkTreePath *path; GaimBlistNode *node; - GValue val = { 0, }; + GValue val; GtkTreeIter iter; GtkTreeSelection *sel; GaimPlugin *prpl = NULL; @@ -1321,6 +1326,7 @@ if (!gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(tv), event->x, event->y, &path, NULL, NULL, NULL)) return FALSE; gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, path); + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); gtknode = (struct _gaim_gtk_blist_node *)node->ui_data; @@ -1381,7 +1387,7 @@ gaim_gtk_blist_popup_menu_cb(GtkWidget *tv, void *user_data) { GaimBlistNode *node; - GValue val = { 0, }; + GValue val; GtkTreeIter iter; GtkTreeSelection *sel; gboolean handled = FALSE; @@ -1390,6 +1396,7 @@ if (!gtk_tree_selection_get_selected(sel, NULL, &iter)) return FALSE; + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -1639,10 +1646,11 @@ GtkTreePath *sourcerow = gtk_tree_row_reference_get_path(ref); GtkTreeIter iter; GaimBlistNode *node = NULL; - GValue val = {0}; + GValue val; if(!sourcerow) return; gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, sourcerow); + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); gtk_selection_data_set (data, @@ -1661,7 +1669,7 @@ GaimBlistNode *node = NULL; GaimBuddy *buddy; GaimConnection *gc; - GValue val = {0}; + GValue val; GString *str; const char *protocol; char *mime_str; @@ -1674,6 +1682,7 @@ gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, sourcerow); + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); @@ -1748,11 +1757,12 @@ /* if we're here, I think it means the drop is ok */ GtkTreeIter iter; GaimBlistNode *node; - GValue val = {0}; + GValue val; struct _gaim_gtk_blist_node *gtknode; gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, path); + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -1903,10 +1913,11 @@ { GtkTreeIter iter; GaimBlistNode *node; - GValue val = {0}; + GValue val; gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, path); + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -1964,10 +1975,11 @@ { GtkTreeIter iter; GaimBlistNode *node; - GValue val = {0}; + GValue val; gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, path); + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -1999,10 +2011,11 @@ { GtkTreeIter iter; GaimBlistNode *node; - GValue val = {0}; + GValue val; gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, path); + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -2212,12 +2225,13 @@ GtkTreePath *path; GtkTreeIter iter; GaimBlistNode *node; - GValue val = {0}; + GValue val; struct _gaim_gtk_blist_node *gtknode; if (!gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(tv), gtkblist->tip_rect.x, gtkblist->tip_rect.y, &path, NULL, NULL, NULL)) return FALSE; gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, path); + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -2269,7 +2283,7 @@ GtkTreePath *path; GtkTreeIter iter; GaimBlistNode *node; - GValue val = {0}; + GValue val; int scr_w, scr_h, w, h, x, y; #if GTK_CHECK_VERSION(2,2,0) int mon_num; @@ -2288,6 +2302,7 @@ if (!gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(tv), gtkblist->tip_rect.x, gtkblist->tip_rect.y, &path, NULL, NULL, NULL)) return FALSE; gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, path); + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val); node = g_value_get_pointer(&val); @@ -2497,42 +2512,42 @@ static GtkItemFactoryEntry blist_menu[] = { /* Buddies menu */ - { N_("/_Buddies"), NULL, NULL, 0, "<Branch>" }, + { N_("/_Buddies"), NULL, NULL, 0, "<Branch>", NULL }, { N_("/Buddies/New Instant _Message..."), "<CTL>M", gaim_gtkdialogs_im, 0, "<StockItem>", GAIM_STOCK_IM }, { N_("/Buddies/Join a _Chat..."), "<CTL>C", gaim_gtk_blist_joinchat_show, 0, "<StockItem>", GAIM_STOCK_CHAT }, { N_("/Buddies/Get User _Info..."), "<CTL>I", gaim_gtkdialogs_info, 0, "<StockItem>", GAIM_STOCK_INFO }, { N_("/Buddies/View User _Log..."), "<CTL>L", gaim_gtkdialogs_log, 0, "<StockItem>", GAIM_STOCK_LOG }, - { "/Buddies/sep1", NULL, NULL, 0, "<Separator>" }, - { N_("/Buddies/Show _Offline Buddies"), NULL, gaim_gtk_blist_edit_mode_cb, 1, "<CheckItem>"}, - { N_("/Buddies/Show _Empty Groups"), NULL, gaim_gtk_blist_show_empty_groups_cb, 1, "<CheckItem>"}, - { N_("/Buddies/Show Buddy _Details"), NULL, gaim_gtk_blist_buddy_details_cb, 1, "<CheckItem>"}, - { N_("/Buddies/_Sort Buddies"), NULL, NULL, 0, "<Branch>" }, - { "/Buddies/sep2", NULL, NULL, 0, "<Separator>" }, + { "/Buddies/sep1", NULL, NULL, 0, "<Separator>", NULL }, + { N_("/Buddies/Show _Offline Buddies"), NULL, gaim_gtk_blist_edit_mode_cb, 1, "<CheckItem>", NULL }, + { N_("/Buddies/Show _Empty Groups"), NULL, gaim_gtk_blist_show_empty_groups_cb, 1, "<CheckItem>", NULL }, + { N_("/Buddies/Show Buddy _Details"), NULL, gaim_gtk_blist_buddy_details_cb, 1, "<CheckItem>", NULL }, + { N_("/Buddies/_Sort Buddies"), NULL, NULL, 0, "<Branch>", NULL }, + { "/Buddies/sep2", NULL, NULL, 0, "<Separator>", NULL }, { N_("/Buddies/_Add Buddy..."), "<CTL>B", gaim_gtk_blist_add_buddy_cb, 0, "<StockItem>", GTK_STOCK_ADD }, { N_("/Buddies/Add C_hat..."), NULL, gaim_gtk_blist_add_chat_cb, 0, "<StockItem>", GTK_STOCK_ADD }, { N_("/Buddies/Add _Group..."), NULL, gaim_blist_request_add_group, 0, "<StockItem>", GTK_STOCK_ADD }, - { "/Buddies/sep2", NULL, NULL, 0, "<Separator>" }, + { "/Buddies/sep2", NULL, NULL, 0, "<Separator>", NULL }, { N_("/Buddies/_Quit"), "<CTL>Q", gaim_core_quit, 0, "<StockItem>", GTK_STOCK_QUIT }, /* Accounts menu */ - { N_("/_Accounts"), NULL, NULL, 0, "<Branch>" }, + { N_("/_Accounts"), NULL, NULL, 0, "<Branch>", NULL }, { N_("/Accounts/Add\\/Edit"), "<CTL>A", gaim_gtk_accounts_window_show, 0, "<StockItem>", GAIM_STOCK_ACCOUNTS }, /* Tools */ - { N_("/_Tools"), NULL, NULL, 0, "<Branch>" }, + { N_("/_Tools"), NULL, NULL, 0, "<Branch>", NULL }, { N_("/Tools/Buddy _Pounces"), NULL, gaim_gtk_pounces_manager_show, 0, "<StockItem>", GAIM_STOCK_POUNCE }, { N_("/Tools/Plu_gins"), "<CTL>U", gaim_gtk_plugin_dialog_show, 0, "<StockItem>", GAIM_STOCK_PLUGIN }, { N_("/Tools/Pr_eferences"), "<CTL>P", gaim_gtk_prefs_show, 0, "<StockItem>", GTK_STOCK_PREFERENCES }, { N_("/Tools/Pr_ivacy"), NULL, gaim_gtk_privacy_dialog_show, 0, "<StockItem>", GTK_STOCK_DIALOG_ERROR }, - { "/Tools/sep2", NULL, NULL, 0, "<Separator>" }, + { "/Tools/sep2", NULL, NULL, 0, "<Separator>", NULL }, { N_("/Tools/_File Transfers"), "<CTL>T", gaim_show_xfer_dialog, 0, "<StockItem>", GAIM_STOCK_FILE_TRANSFER }, { N_("/Tools/R_oom List"), NULL, gaim_gtk_roomlist_dialog_show, 0, "<StockItem>", GTK_STOCK_INDEX }, { N_("/Tools/System _Log"), NULL, gtk_blist_show_systemlog_cb, 0, "<StockItem>", GAIM_STOCK_LOG }, - { "/Tools/sep3", NULL, NULL, 0, "<Separator>" }, - { N_("/Tools/Mute _Sounds"), "<CTL>S", gaim_gtk_blist_mute_sounds_cb, 0, "<CheckItem>"}, + { "/Tools/sep3", NULL, NULL, 0, "<Separator>", NULL }, + { N_("/Tools/Mute _Sounds"), "<CTL>S", gaim_gtk_blist_mute_sounds_cb, 0, "<CheckItem>", NULL }, /* Help */ - { N_("/_Help"), NULL, NULL, 0, "<Branch>" }, + { N_("/_Help"), NULL, NULL, 0, "<Branch>", NULL }, { N_("/Help/Online _Help"), "F1", gtk_blist_show_onlinehelp_cb, 0, "<StockItem>", GTK_STOCK_HELP }, { N_("/Help/_Debug Window"), NULL, toggle_debug, 0, "<StockItem>", GAIM_STOCK_DEBUG }, { N_("/Help/_About"), NULL, gaim_gtkdialogs_about, 0, "<StockItem>", GAIM_STOCK_ABOUT }, @@ -5096,8 +5111,6 @@ static void sort_method_alphabetical(GaimBlistNode *node, GaimBuddyList *blist, GtkTreeIter groupiter, GtkTreeIter *cur, GtkTreeIter *iter) { GtkTreeIter more_z; - GaimBlistNode *n; - GValue val = {0,}; const char *my_name; @@ -5117,9 +5130,12 @@ } do { + GValue val; + GaimBlistNode *n; const char *this_name; int cmp; + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &more_z, NODE_COLUMN, &val); n = g_value_get_pointer(&val); @@ -5160,8 +5176,6 @@ static void sort_method_status(GaimBlistNode *node, GaimBuddyList *blist, GtkTreeIter groupiter, GtkTreeIter *cur, GtkTreeIter *iter) { GtkTreeIter more_z; - GaimBlistNode *n; - GValue val = {0,}; GaimBuddy *my_buddy, *this_buddy; @@ -5187,9 +5201,12 @@ } do { + GValue val; + GaimBlistNode *n; gint name_cmp; gint presence_cmp; + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &more_z, NODE_COLUMN, &val); n = g_value_get_pointer(&val); @@ -5248,8 +5265,6 @@ static void sort_method_log(GaimBlistNode *node, GaimBuddyList *blist, GtkTreeIter groupiter, GtkTreeIter *cur, GtkTreeIter *iter) { GtkTreeIter more_z; - GaimBlistNode *n = NULL, *n2; - GValue val = {0,}; int log_size = 0, this_log_size = 0; const char *buddy_name, *this_buddy_name; @@ -5260,6 +5275,7 @@ } if(GAIM_BLIST_NODE_IS_CONTACT(node)) { + GaimBlistNode *n; for (n = node->child; n; n = n->next) log_size += gaim_log_get_total_size(GAIM_LOG_IM, ((GaimBuddy*)(n))->name, ((GaimBuddy*)(n))->account); buddy_name = gaim_contact_get_alias((GaimContact*)node); @@ -5285,8 +5301,12 @@ } do { + GValue val; + GaimBlistNode *n; + GaimBlistNode *n2; int cmp; + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &more_z, NODE_COLUMN, &val); n = g_value_get_pointer(&val); this_log_size = 0;
--- a/src/gtkcellrendererprogress.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkcellrendererprogress.c Wed Dec 21 18:36:19 2005 +0000 @@ -96,6 +96,7 @@ sizeof (GaimGtkCellRendererProgress), 0, /* n_preallocs */ (GInstanceInitFunc) gaim_gtk_cell_renderer_progress_init, + NULL /* value_table */ }; cell_progress_type =
--- a/src/gtkconv.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkconv.c Wed Dec 21 18:36:19 2005 +0000 @@ -2504,12 +2504,12 @@ static GtkItemFactoryEntry menu_items[] = { /* Conversation menu */ - { N_("/_Conversation"), NULL, NULL, 0, "<Branch>" }, + { N_("/_Conversation"), NULL, NULL, 0, "<Branch>", NULL }, { N_("/Conversation/New Instant _Message..."), "<CTL>M", menu_new_conv_cb, 0, "<StockItem>", GAIM_STOCK_IM }, - { "/Conversation/sep0", NULL, NULL, 0, "<Separator>" }, + { "/Conversation/sep0", NULL, NULL, 0, "<Separator>", NULL }, { N_("/Conversation/_Find..."), NULL, menu_find_cb, 0, "<StockItem>", GTK_STOCK_FIND }, @@ -2518,7 +2518,7 @@ "<StockItem>", GTK_STOCK_SAVE_AS }, { N_("/Conversation/Clea_r"), "<CTL>L", menu_clear_cb, 0, "<StockItem>", GTK_STOCK_CLEAR }, - { "/Conversation/sep1", NULL, NULL, 0, "<Separator>" }, + { "/Conversation/sep1", NULL, NULL, 0, "<Separator>", NULL }, { N_("/Conversation/Se_nd File..."), NULL, menu_send_file_cb, 0, "<StockItem>", GAIM_STOCK_FILE_TRANSFER }, { N_("/Conversation/Add Buddy _Pounce..."), NULL, menu_add_pounce_cb, @@ -2528,7 +2528,7 @@ { N_("/Conversation/In_vite..."), NULL, menu_invite_cb, 0, "<StockItem>", GAIM_STOCK_INVITE }, - { "/Conversation/sep2", NULL, NULL, 0, "<Separator>" }, + { "/Conversation/sep2", NULL, NULL, 0, "<Separator>", NULL }, { N_("/Conversation/Al_ias..."), NULL, menu_alias_cb, 0, "<StockItem>", GAIM_STOCK_EDIT }, @@ -2539,26 +2539,26 @@ { N_("/Conversation/_Remove..."), NULL, menu_add_remove_cb, 0, "<StockItem>", GTK_STOCK_REMOVE }, - { "/Conversation/sep3", NULL, NULL, 0, "<Separator>" }, + { "/Conversation/sep3", NULL, NULL, 0, "<Separator>", NULL }, { N_("/Conversation/Insert Lin_k..."), NULL, menu_insert_link_cb, 0, "<StockItem>", GAIM_STOCK_LINK }, { N_("/Conversation/Insert Imag_e..."), NULL, menu_insert_image_cb, 0, "<StockItem>", GAIM_STOCK_IMAGE }, - { "/Conversation/sep4", NULL, NULL, 0, "<Separator>" }, + { "/Conversation/sep4", NULL, NULL, 0, "<Separator>", NULL }, { N_("/Conversation/_Close"), NULL, menu_close_conv_cb, 0, "<StockItem>", GTK_STOCK_CLOSE }, /* Options */ - { N_("/_Options"), NULL, NULL, 0, "<Branch>" }, - { N_("/Options/Enable _Logging"), NULL, menu_logging_cb, 0, "<CheckItem>" }, - { N_("/Options/Enable _Sounds"), NULL, menu_sounds_cb, 0, "<CheckItem>" }, - { N_("/Options/Show Buddy _Icon"), NULL, menu_buddyicon_cb, 0, "<CheckItem>" }, - { "/Options/sep0", NULL, NULL, 0, "<Separator>" }, - { N_("/Options/Show Formatting _Toolbars"), NULL, menu_toolbar_cb, 0, "<CheckItem>" }, - { N_("/Options/Show Ti_mestamps"), "F2", menu_timestamps_cb, 0, "<CheckItem>" }, + { N_("/_Options"), NULL, NULL, 0, "<Branch>", NULL }, + { N_("/Options/Enable _Logging"), NULL, menu_logging_cb, 0, "<CheckItem>", NULL }, + { N_("/Options/Enable _Sounds"), NULL, menu_sounds_cb, 0, "<CheckItem>", NULL }, + { N_("/Options/Show Buddy _Icon"), NULL, menu_buddyicon_cb, 0, "<CheckItem>", NULL }, + { "/Options/sep0", NULL, NULL, 0, "<Separator>", NULL }, + { N_("/Options/Show Formatting _Toolbars"), NULL, menu_toolbar_cb, 0, "<CheckItem>", NULL }, + { N_("/Options/Show Ti_mestamps"), "F2", menu_timestamps_cb, 0, "<CheckItem>", NULL }, }; static const int menu_item_count =
--- a/src/gtkft.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkft.c Wed Dec 21 18:36:19 2005 +0000 @@ -383,10 +383,11 @@ GaimXfer *xfer = NULL; if (gtk_tree_selection_get_selected(selection, NULL, &iter)) { - GValue val = {0, }; + GValue val; gtk_widget_set_sensitive(dialog->expander, TRUE); + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(dialog->model), &iter, COLUMN_DATA, &val);
--- a/src/gtkimhtml.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkimhtml.c Wed Dec 21 18:36:19 2005 +0000 @@ -1446,7 +1446,8 @@ NULL, sizeof (GtkIMHtml), 0, - (GInstanceInitFunc) gtk_imhtml_init + (GInstanceInitFunc) gtk_imhtml_init, + NULL }; imhtml_type = g_type_register_static(gtk_text_view_get_type(),
--- a/src/gtkimhtmltoolbar.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkimhtmltoolbar.c Wed Dec 21 18:36:19 2005 +0000 @@ -1086,7 +1086,8 @@ NULL, sizeof (GtkIMHtmlToolbar), 0, - (GInstanceInitFunc) gtk_imhtmltoolbar_init + (GInstanceInitFunc) gtk_imhtmltoolbar_init, + NULL }; imhtmltoolbar_type = g_type_register_static(GTK_TYPE_HBOX,
--- a/src/gtklog.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtklog.c Wed Dec 21 18:36:19 2005 +0000 @@ -175,7 +175,7 @@ static void log_select_cb(GtkTreeSelection *sel, GaimGtkLogViewer *viewer) { GtkTreeIter iter; - GValue val = { 0, }; + GValue val; GtkTreeModel *model = GTK_TREE_MODEL(viewer->treestore); GaimLog *log = NULL; GdkCursor *cursor; @@ -185,6 +185,8 @@ if (!gtk_tree_selection_get_selected(sel, &model, &iter)) return; + + val.g_type = 0; gtk_tree_model_get_value (model, &iter, 1, &val); log = g_value_get_pointer(&val); g_value_unset(&val);
--- a/src/gtkmain.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkmain.c Wed Dec 21 18:36:19 2005 +0000 @@ -466,6 +466,11 @@ debug_enabled = FALSE; #endif +#ifdef GAIM_FATAL_ASSERTS + /* Make g_return_... functions fatal. */ + g_log_set_always_fatal(G_LOG_LEVEL_CRITICAL); +#endif + #ifndef _WIN32 br_set_locate_fallback_func(gaim_find_binary_location, argv[0]); #endif
--- a/src/gtknotify.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtknotify.c Wed Dec 21 18:36:19 2005 +0000 @@ -456,9 +456,10 @@ gtk_list_store_set(model, &iter, 0, scaled, -1); for (j = 1; j < col_num; j++) { - GValue v = {0, }; + GValue v; char *escaped = g_markup_escape_text(g_list_nth_data(row, j - 1), -1); + v.g_type = 0; g_value_init(&v, G_TYPE_STRING); g_value_set_string(&v, escaped); gtk_list_store_set_value(model, &iter, j, &v);
--- a/src/gtkplugin.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkplugin.c Wed Dec 21 18:36:19 2005 +0000 @@ -236,7 +236,7 @@ { gchar *buf, *pname, *pdesc, *pauth, *pweb; GtkTreeIter iter; - GValue val = { 0, }; + GValue val; GaimPlugin *plug; if (!gtk_tree_selection_get_selected (sel, &model, &iter)) @@ -254,6 +254,7 @@ gtk_widget_set_sensitive(expander, TRUE); + val.g_type = 0; gtk_tree_model_get_value (model, &iter, 2, &val); plug = g_value_get_pointer(&val); @@ -298,7 +299,7 @@ GaimPlugin *plug; GtkWidget *dialog, *box; GtkTreeModel *model; - GValue val = { 0, }; + GValue val; GtkTreeIter iter; switch (response) { @@ -314,7 +315,8 @@ case GAIM_RESPONSE_CONFIGURE: if (! gtk_tree_selection_get_selected (sel, &model, &iter)) return; - gtk_tree_model_get_value (model, &iter, 2, &val); + val.g_type = 0; + gtk_tree_model_get_value(model, &iter, 2, &val); plug = g_value_get_pointer(&val); if (plug == NULL) break;
--- a/src/gtkprefs.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkprefs.c Wed Dec 21 18:36:19 2005 +0000 @@ -366,7 +366,7 @@ GtkTreeIter iter; const char *themename; char *description; - GValue val = { 0, }; + GValue val; GtkTreePath *path, *oldpath; struct smiley_theme *new_theme, *old_theme; @@ -374,6 +374,7 @@ return; old_theme = current_smiley_theme; + val.g_type = 0; gtk_tree_model_get_value(model, &iter, 3, &val); path = gtk_tree_model_get_path(model, &iter); themename = g_value_get_string(&val); @@ -1430,12 +1431,14 @@ static void prefs_sound_sel(GtkTreeSelection *sel, GtkTreeModel *model) { GtkTreeIter iter; - GValue val = { 0, }; + GValue val; const char *file; char *pref; if (! gtk_tree_selection_get_selected (sel, &model, &iter)) return; + + val.g_type = 0; gtk_tree_model_get_value (model, &iter, 3, &val); sound_row_sel = g_value_get_uint(&val);
--- a/src/gtkrequest.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkrequest.c Wed Dec 21 18:36:19 2005 +0000 @@ -763,12 +763,13 @@ const gchar *key, GtkTreeIter *iter, gpointer user_data) { GtkTreeModel *model; - GValue val1 = { 0, }; - GValue val2 = { 0, }; + GValue val1; + GValue val2; const char *tmp; model = gtk_entry_completion_get_model (completion); + val1.g_type = 0; gtk_tree_model_get_value(model, iter, 2, &val1); tmp = g_value_get_string(&val1); if (tmp != NULL && gaim_str_has_prefix(tmp, key)) @@ -778,6 +779,7 @@ } g_value_unset(&val1); + val2.g_type = 0; gtk_tree_model_get_value(model, iter, 3, &val2); tmp = g_value_get_string(&val2); if (tmp != NULL && gaim_str_has_prefix(tmp, key)) @@ -793,11 +795,12 @@ static gboolean screenname_completion_match_selected_cb(GtkEntryCompletion *completion, GtkTreeModel *model, GtkTreeIter *iter, gpointer *user_data) { - GValue val = { 0, }; + GValue val; GaimRequestField *screen_field = user_data[1]; GList *fields = screen_field->group->fields; GaimAccount *account; + val.g_type = 0; gtk_tree_model_get_value(model, iter, 1, &val); gtk_entry_set_text(GTK_ENTRY(user_data[0]), g_value_get_string(&val)); g_value_unset(&val);
--- a/src/gtkroomlist.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/gtkroomlist.c Wed Dec 21 18:36:19 2005 +0000 @@ -166,7 +166,7 @@ static void selection_changed_cb(GtkTreeSelection *selection, GaimGtkRoomlist *grl) { GtkTreeIter iter; - GValue val = { 0, }; + GValue val; GaimRoomlistRoom *room; static struct _menu_cb_info *info; GaimGtkRoomlistDialog *dialog; @@ -174,6 +174,7 @@ dialog = grl->dialog; if (gtk_tree_selection_get_selected(selection, NULL, &iter)) { + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val); room = g_value_get_pointer(&val); if (!room || !(room->type & GAIM_ROOMLIST_ROOMTYPE_ROOM)) { @@ -217,10 +218,11 @@ GaimGtkRoomlist *grl = list->ui_data; GtkTreeIter iter; GaimRoomlistRoom *room; - GValue val = { 0, }; + GValue val; struct _menu_cb_info info; gtk_tree_model_get_iter(GTK_TREE_MODEL(grl->model), &iter, path); + val.g_type = 0; gtk_tree_model_get_value(GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val); room = g_value_get_pointer(&val); if (!room || !(room->type & GAIM_ROOMLIST_ROOMTYPE_ROOM)) @@ -236,7 +238,7 @@ { GtkTreePath *path; GaimGtkRoomlist *grl = list->ui_data; - GValue val = { 0, }; + GValue val; GaimRoomlistRoom *room; GtkTreeIter iter; GtkWidget *menu; @@ -250,6 +252,7 @@ return FALSE; gtk_tree_model_get_iter(GTK_TREE_MODEL(grl->model), &iter, path); gtk_tree_path_free(path); + val.g_type = 0; gtk_tree_model_get_value (GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val); room = g_value_get_pointer(&val); @@ -275,8 +278,9 @@ { GaimRoomlist *list = user_data; GaimRoomlistRoom *category; - GValue val = { 0, }; + GValue val; + val.g_type = 0; gtk_tree_model_get_value(gtk_tree_view_get_model(treeview), arg1, ROOM_COLUMN, &val); category = g_value_get_pointer(&val);
--- a/src/protocols/gg/gg.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/gg/gg.c Wed Dec 21 18:36:19 2005 +0000 @@ -1916,7 +1916,9 @@ NULL, /* roomlist_expand_category */ NULL, /* can_receive_file */ NULL, /* send_file */ - NULL /* new_xfer */ + NULL, /* new_xfer */ + NULL, /* whiteboard_prpl_ops */ + NULL, /* media_prpl_ops */ }; /* }}} */
--- a/src/protocols/irc/irc.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/irc/irc.c Wed Dec 21 18:36:19 2005 +0000 @@ -775,7 +775,9 @@ NULL, /* roomlist_expand_category */ NULL, /* can_receive_file */ irc_dccsend_send_file, /* send_file */ - irc_dccsend_new_xfer /* new_xfer */ + irc_dccsend_new_xfer, /* new_xfer */ + NULL, /* whiteboard_prpl_ops */ + NULL, /* media_prpl_ops */ };
--- a/src/protocols/jabber/jabber.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/jabber/jabber.c Wed Dec 21 18:36:19 2005 +0000 @@ -1733,7 +1733,8 @@ NULL, /* can_receive_file */ jabber_si_xfer_send, /* send_file */ jabber_si_new_xfer, /* new_xfer */ - NULL /* whiteboard operations */ + NULL, /* whiteboard_prpl_ops */ + NULL, /* media_prpl_ops */ }; static GaimPluginInfo info =
--- a/src/protocols/msn/msn.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/msn/msn.c Wed Dec 21 18:36:19 2005 +0000 @@ -1896,7 +1896,9 @@ NULL, /* roomlist_expand_category */ msn_can_receive_file, /* can_receive_file */ msn_send_file, /* send_file */ - msn_new_xfer /* new_xfer */ + msn_new_xfer, /* new_xfer */ + NULL, /* whiteboard_prpl_ops */ + NULL, /* media_prpl_ops */ }; static GaimPluginInfo info =
--- a/src/protocols/novell/novell.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/novell/novell.c Wed Dec 21 18:36:19 2005 +0000 @@ -3524,7 +3524,9 @@ NULL, /* roomlist_expand_category */ NULL, /* can_receive_file */ NULL, /* send_file */ - NULL /* new_xfer */ + NULL, /* new_xfer */ + NULL, /* whiteboard_prpl_ops */ + NULL, /* media_prpl_ops */ }; static GaimPluginInfo info = {
--- a/src/protocols/oscar/im.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/oscar/im.c Wed Dec 21 18:36:19 2005 +0000 @@ -113,7 +113,7 @@ { AIM_CLIENTTYPE_AOL_TOC, 1, {0x01}}, - { 0, 0} + { 0, 0, {0x00}} }; int i;
--- a/src/protocols/oscar/locate.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/oscar/locate.c Wed Dec 21 18:36:19 2005 +0000 @@ -195,7 +195,9 @@ {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}, - {AIM_CAPS_LAST} + {AIM_CAPS_LAST, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}, }; /*
--- a/src/protocols/oscar/oscar.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/oscar/oscar.c Wed Dec 21 18:36:19 2005 +0000 @@ -8519,12 +8519,14 @@ oscar_can_receive_file, /* can_receive_file */ oscar_send_file, /* send_file */ oscar_new_xfer, /* new_xfer */ - NULL, /* whiteboard ops */ - NULL /* media ops */ + NULL, /* whiteboard_prpl_ops */ + NULL, /* media_prpl_ops */ }; static GaimPluginUiInfo prefs_info = { - get_plugin_pref_frame + get_plugin_pref_frame, + 0, /* page_num (Reserved) */ + NULL /* frame (Reserved) */ }; static GaimPluginInfo info =
--- a/src/protocols/silc/silc.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/silc/silc.c Wed Dec 21 18:36:19 2005 +0000 @@ -1779,7 +1779,8 @@ NULL, /* can_receive_file */ silcgaim_ftp_send_file, /* send_file */ silcgaim_ftp_new_xfer, /* new_xfer */ - &silcgaim_wb_ops, /* whiteboard operations */ + &silcgaim_wb_ops, /* whiteboard_prpl_ops */ + NULL, /* media_prpl_ops */ }; static GaimPluginInfo info =
--- a/src/protocols/simple/simple.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/simple/simple.c Wed Dec 21 18:36:19 2005 +0000 @@ -1414,7 +1414,9 @@ NULL, /* roomlist_expand_category */ NULL, /* can_receive_file */ NULL, /* send_file */ - NULL /* new_xfer */ + NULL, /* new_xfer */ + NULL, /* whiteboard_prpl_ops */ + NULL, /* media_prpl_ops */ };
--- a/src/protocols/yahoo/yahoo.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/yahoo/yahoo.c Wed Dec 21 18:36:19 2005 +0000 @@ -3610,7 +3610,8 @@ NULL, /* can_receive_file */ yahoo_send_file, yahoo_new_xfer, - &yahoo_whiteboard_prpl_ops + &yahoo_whiteboard_prpl_ops, + NULL, /* media_prpl_ops */ }; static GaimPluginInfo info =
--- a/src/protocols/yahoo/yahoo_profile.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/yahoo/yahoo_profile.c Wed Dec 21 18:36:19 2005 +0000 @@ -622,7 +622,29 @@ "推薦網站連結 3:", /* TODO */ NULL }, - { XX, NULL, NULL, NULL, NULL, NULL, NULL }, + { XX, NULL, NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL + }, }; static char *yahoo_remove_nonbreaking_spaces(char *str)
--- a/src/protocols/zephyr/zephyr.c Wed Dec 21 13:37:18 2005 +0000 +++ b/src/protocols/zephyr/zephyr.c Wed Dec 21 18:36:19 2005 +0000 @@ -2830,7 +2830,9 @@ NULL, /* roomlist_expand_category */ NULL, /* can_receive_file */ NULL, /* send_file */ - NULL /* new_xfer */ + NULL, /* new_xfer */ + NULL, /* whiteboard_prpl_ops */ + NULL, /* media_prpl_ops */ }; static GaimPluginInfo info = {