Hello community, here is the log from the commit of package smuxi for openSUSE:Factory checked in at 2017-06-19 13:23:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/smuxi (Old) and /work/SRC/openSUSE:Factory/.smuxi.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "smuxi" Mon Jun 19 13:23:42 2017 rev:26 rq:504485 version:1.0.7 Changes: -------- --- /work/SRC/openSUSE:Factory/smuxi/smuxi.changes 2017-02-03 20:02:02.728221115 +0100 +++ /work/SRC/openSUSE:Factory/.smuxi.new/smuxi.changes 2017-06-19 13:23:45.557316382 +0200 @@ -1,0 +2,8 @@ +Sun Jun 18 10:50:59 UTC 2017 - [email protected] + +- Update to version 1.0.7: + + Builds and runs correctly on Mono 5.x. + + No longer crash with a SEGV or NullReferenceException when + re-joining channels when running on GTK# 2.12.40. + +------------------------------------------------------------------- Old: ---- smuxi-1.0.6.tar.gz New: ---- smuxi-1.0.7.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ smuxi.spec ++++++ --- /var/tmp/diff_new_pack.rmxImM/_old 2017-06-19 13:23:46.409196279 +0200 +++ /var/tmp/diff_new_pack.rmxImM/_new 2017-06-19 13:23:46.413195715 +0200 @@ -17,15 +17,15 @@ Name: smuxi -Version: 1.0.6 +Version: 1.0.7 Release: 0 # FIXME: when db4o is in Factory, uncomment BuildRequires for it Url: http://www.smuxi.org Source0: http://www.smuxi.org/jaws/data/files/%{name}-%{version}.tar.gz Summary: Smart MUltipleXed Irc +#BuildRequires: indicate-sharp License: GPL-2.0+ Group: Productivity/Networking/IRC -#BuildRequires: indicate-sharp BuildRequires: intltool BuildRequires: mono-devel >= 2.6 BuildRequires: update-desktop-files ++++++ smuxi-1.0.6.tar.gz -> smuxi-1.0.7.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/Makefile.am new/smuxi-1.0.7/Makefile.am --- old/smuxi-1.0.6/Makefile.am 2016-11-19 08:36:21.000000000 +0100 +++ new/smuxi-1.0.7/Makefile.am 2017-06-18 11:25:19.000000000 +0200 @@ -217,6 +217,7 @@ LINUX_STATIC_FILES = \ $(LIB_DIR)/Mono.Data.Sqlite.dll \ $(LIB_DIR)/Mono.Posix.dll \ + /usr/lib/libMonoPosixHelper.so \ $(LIB_DIR)/Nini.dll \ $(LIB_DIR)/log4net.dll \ $(BUILD_DIR)/smuxi-common.dll \ @@ -256,6 +257,7 @@ mkdir -p $(WIN32_BUILD_DIR)/icons cp -r $(WIN32_ICON_THEME_DIR) $(WIN32_BUILD_DIR)/icons makensis $(top_srcdir)/src/smuxi-win32.nsis + mv smuxi-win32-setup.exe smuxi-$(VERSION)-win32-setup.exe dist-osx: DIST_VERSION=$$(git describe); \ @@ -275,6 +277,7 @@ cp -r $(OSX_ICON_THEME_DIR) $(OSX_BINARIES_DIR)/icons -rm smuxi-osx.zip cd $(OSX_BUILD_DIR) && zip -r ../smuxi-osx.zip Smuxi.app + mv smuxi-osx.zip smuxi-$(VERSION)-osx.zip dist-linux-static: DIST_VERSION=$$(git describe); \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/Makefile.in new/smuxi-1.0.7/Makefile.in --- old/smuxi-1.0.6/Makefile.in 2016-11-19 09:40:09.000000000 +0100 +++ new/smuxi-1.0.7/Makefile.in 2017-06-18 11:26:15.000000000 +0200 @@ -561,6 +561,7 @@ LINUX_STATIC_FILES = \ $(LIB_DIR)/Mono.Data.Sqlite.dll \ $(LIB_DIR)/Mono.Posix.dll \ + /usr/lib/libMonoPosixHelper.so \ $(LIB_DIR)/Nini.dll \ $(LIB_DIR)/log4net.dll \ $(BUILD_DIR)/smuxi-common.dll \ @@ -1120,6 +1121,7 @@ mkdir -p $(WIN32_BUILD_DIR)/icons cp -r $(WIN32_ICON_THEME_DIR) $(WIN32_BUILD_DIR)/icons makensis $(top_srcdir)/src/smuxi-win32.nsis + mv smuxi-win32-setup.exe smuxi-$(VERSION)-win32-setup.exe dist-osx: DIST_VERSION=$$(git describe); \ @@ -1139,6 +1141,7 @@ cp -r $(OSX_ICON_THEME_DIR) $(OSX_BINARIES_DIR)/icons -rm smuxi-osx.zip cd $(OSX_BUILD_DIR) && zip -r ../smuxi-osx.zip Smuxi.app + mv smuxi-osx.zip smuxi-$(VERSION)-osx.zip dist-linux-static: DIST_VERSION=$$(git describe); \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/configure new/smuxi-1.0.7/configure --- old/smuxi-1.0.6/configure 2016-11-19 09:40:10.000000000 +0100 +++ new/smuxi-1.0.7/configure 2017-06-18 11:26:16.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for smuxi 1.0.6. +# Generated by GNU Autoconf 2.69 for smuxi 1.0.7. # # Report bugs to <https://smuxi.im/issues/new>. # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='smuxi' PACKAGE_TARNAME='smuxi' -PACKAGE_VERSION='1.0.6' -PACKAGE_STRING='smuxi 1.0.6' +PACKAGE_VERSION='1.0.7' +PACKAGE_STRING='smuxi 1.0.7' PACKAGE_BUGREPORT='https://smuxi.im/issues/new' PACKAGE_URL='' @@ -1544,7 +1544,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures smuxi 1.0.6 to adapt to many kinds of systems. +\`configure' configures smuxi 1.0.7 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1614,7 +1614,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of smuxi 1.0.6:";; + short | recursive ) echo "Configuration of smuxi 1.0.7:";; esac cat <<\_ACEOF @@ -1829,7 +1829,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -smuxi configure 1.0.6 +smuxi configure 1.0.7 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2107,7 +2107,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by smuxi $as_me 1.0.6, which was +It was created by smuxi $as_me 1.0.7, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2973,7 +2973,7 @@ # Define the identity of the package. PACKAGE='smuxi' - VERSION='1.0.6' + VERSION='1.0.7' cat >>confdefs.h <<_ACEOF @@ -15282,6 +15282,20 @@ if test "$CLI_RUNTIME" = "4.5"; then XBUILD_FLAGS="/toolsversion:4.0 /p:TargetFrameworkVersion=v4.5 /property:DefineConstants=MONO_4_5" fi +# Mono's xbuild >= 5.0 no longer defaults to mcs as compiler but csc which will +# generate debug symbol files named .pdb instead of .mdb. Since we are +# installing the debug symbol files, we override the compiler to mcs to ensure +# the files will be avilable for the install during "make install" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Mono >= 5.0" >&5 +$as_echo_n "checking for Mono >= 5.0... " >&6; } +if $PKG_CONFIG 'mono >= 5.0'; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + XBUILD_FLAGS+=" /p:CscToolExe=mcs.exe" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi # Required Libraries @@ -18931,7 +18945,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by smuxi $as_me 1.0.6, which was +This file was extended by smuxi $as_me 1.0.7, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -18988,7 +19002,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -smuxi config.status 1.0.6 +smuxi config.status 1.0.7 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/configure.ac new/smuxi-1.0.7/configure.ac --- old/smuxi-1.0.6/configure.ac 2016-11-19 08:41:52.000000000 +0100 +++ new/smuxi-1.0.7/configure.ac 2017-06-18 11:03:55.000000000 +0200 @@ -1,5 +1,5 @@ AC_PREREQ([2.54]) -AC_INIT([smuxi], [1.0.6], [https://smuxi.im/issues/new]) +AC_INIT([smuxi], [1.0.7], [https://smuxi.im/issues/new]) # using the --foreign option makes automake less strict about GNU policy AC_CONFIG_MACRO_DIR([.]) AM_INIT_AUTOMAKE([foreign tar-ustar]) @@ -232,6 +232,17 @@ if test "$CLI_RUNTIME" = "4.5"; then XBUILD_FLAGS="/toolsversion:4.0 /p:TargetFrameworkVersion=v4.5 /property:DefineConstants=MONO_4_5" fi +# Mono's xbuild >= 5.0 no longer defaults to mcs as compiler but csc which will +# generate debug symbol files named .pdb instead of .mdb. Since we are +# installing the debug symbol files, we override the compiler to mcs to ensure +# the files will be avilable for the install during "make install" +AC_MSG_CHECKING([for Mono >= 5.0]) +if $PKG_CONFIG 'mono >= 5.0'; then + AC_MSG_RESULT(yes) + XBUILD_FLAGS+=" /p:CscToolExe=mcs.exe" +else + AC_MSG_RESULT(no) +fi AC_SUBST(XBUILD_FLAGS) # Required Libraries diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/src/AssemblyVersion.cs new/smuxi-1.0.7/src/AssemblyVersion.cs --- old/smuxi-1.0.6/src/AssemblyVersion.cs 2016-11-19 09:40:15.000000000 +0100 +++ new/smuxi-1.0.7/src/AssemblyVersion.cs 2017-06-18 11:26:21.000000000 +0200 @@ -36,5 +36,5 @@ [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] -[assembly: AssemblyVersion("1.0.6")] +[assembly: AssemblyVersion("1.0.7")] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/src/Common/Defines.cs new/smuxi-1.0.7/src/Common/Defines.cs --- old/smuxi-1.0.6/src/Common/Defines.cs 2016-11-19 09:40:15.000000000 +0100 +++ new/smuxi-1.0.7/src/Common/Defines.cs 2017-06-18 11:26:21.000000000 +0200 @@ -26,10 +26,10 @@ public static class Defines { public const string GitBranch = "release/1.0"; - public const string GitCommitHash = "ecfdf4d"; + public const string GitCommitHash = "a63e623"; private static readonly string f_InstallPrefix = "/usr/local"; - private static readonly string f_DistVersion = "release/1.0/ecfdf4d"; + private static readonly string f_DistVersion = "release/1.0/a63e623"; private static readonly string f_TwitterApiKey = "60QV2qQx9cS7y1BJDbgAA|2VgD6qQKddsF5HYQ0TrRgs3tFTnCwDONBmRlTmG658"; public static string InstallPrefix { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/src/Engine/Chats/ChatModel.cs new/smuxi-1.0.7/src/Engine/Chats/ChatModel.cs --- old/smuxi-1.0.6/src/Engine/Chats/ChatModel.cs 2016-06-09 22:34:19.000000000 +0200 +++ new/smuxi-1.0.7/src/Engine/Chats/ChatModel.cs 2017-06-18 11:03:21.000000000 +0200 @@ -133,7 +133,18 @@ return MessageBuffer.LastSeenHighlight; } set { - MessageBuffer.LastSeenHighlight = value; + var msgBuffer = MessageBuffer; + if (msgBuffer == null) { +#if LOG4NET + _Logger.ErrorFormat( + "{0}.set_LastSeenHighlight(): MessageBuffer is null, " + + "ignoring set call...", + this + ); +#endif + return; + } + msgBuffer.LastSeenHighlight = value; } } @@ -145,7 +156,18 @@ return MessageBuffer.LastSeenMessage; } set { - MessageBuffer.LastSeenMessage = value; + var msgBuffer = MessageBuffer; + if (msgBuffer == null) { +#if LOG4NET + _Logger.ErrorFormat( + "{0}.set_LastSeenMessage(): MessageBuffer is null, " + + "ignoring set call...", + this + ); +#endif + return; + } + msgBuffer.LastSeenMessage = value; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/src/Frontend-GNOME/Views/ChatTreeView.cs new/smuxi-1.0.7/src/Frontend-GNOME/Views/ChatTreeView.cs --- old/smuxi-1.0.6/src/Frontend-GNOME/Views/ChatTreeView.cs 2016-06-09 22:34:19.000000000 +0200 +++ new/smuxi-1.0.7/src/Frontend-GNOME/Views/ChatTreeView.cs 2017-06-18 11:03:21.000000000 +0200 @@ -25,6 +25,9 @@ { public class ChatTreeView : Gtk.TreeView { +#if LOG4NET + private static readonly log4net.ILog f_Logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); +#endif public Gtk.TreeStore TreeStore { get; private set; } ThemeSettings ThemeSettings { get; set; } int f_CurrentChatNumber; @@ -40,9 +43,21 @@ set { Gtk.TreeIter iter; if (value == null) { - TreeStore.GetIterFirst(out iter); + if (!TreeStore.GetIterFirst(out iter)) { + // no chat views available; this can happen on shutdown + return; + } } else { iter = FindChatIter(value); + if (Gtk.TreeIter.Zero.Equals(iter)) { +#if LOG4NET + f_Logger.ErrorFormat( + "set_CurrentChatView(): FindChatIter({0}) " + + "returned Gtk.TreeIter.Zero, ignoring...", value + ); +#endif + return; + } } var path = TreeStore.GetPath(iter); // we have to ensure we can make the new selection @@ -86,6 +101,10 @@ Selection.SelectIter(iter); return; } + if (Gtk.TreeIter.Zero.Equals(iter)) { + // no chat views available; this happens during shutdown + return; + } var path = TreeStore.GetPath(iter); f_CurrentChatNumber = GetRowNumber(path); }; @@ -492,7 +511,9 @@ Gtk.TreePath GetPath(int rowNumber) { Gtk.TreeIter iter; - TreeStore.GetIterFirst(out iter); + if (!TreeStore.GetIterFirst(out iter)) { + return null; + } var path = TreeStore.GetPath(iter); // TODO: clamp upper limit int i; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/src/Frontend-GNOME/Views/Chats/GroupChatView.cs new/smuxi-1.0.7/src/Frontend-GNOME/Views/Chats/GroupChatView.cs --- old/smuxi-1.0.6/src/Frontend-GNOME/Views/Chats/GroupChatView.cs 2016-06-09 22:34:19.000000000 +0200 +++ new/smuxi-1.0.7/src/Frontend-GNOME/Views/Chats/GroupChatView.cs 2017-06-18 11:03:21.000000000 +0200 @@ -325,8 +325,6 @@ Gtk.ListStore ls = (Gtk.ListStore) _PersonTreeView.Model; // cleanup, be sure the list is empty ls.Clear(); - // detach the model (less CPU load) - _PersonTreeView.Model = new Gtk.ListStore(typeof(PersonModel)); Participants = new List<PersonModel>(); string longestName = String.Empty; foreach (var person in persons.Values.OrderBy(x => x)) { @@ -337,11 +335,6 @@ } Participants.Add(person); } - // attach the model again - // BUG? TreeView doesn't seem to recognize existing values in the model?!? - // see: http://www.smuxi.org/issues/show/132 - _PersonTreeView.Model = ls; - _PersonTreeView.SearchColumn = 0; OnParticipantsChanged(EventArgs.Empty); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/src/Frontend-GNOME/smuxi-frontend-gnome.in new/smuxi-1.0.7/src/Frontend-GNOME/smuxi-frontend-gnome.in --- old/smuxi-1.0.6/src/Frontend-GNOME/smuxi-frontend-gnome.in 2016-06-09 22:34:19.000000000 +0200 +++ new/smuxi-1.0.7/src/Frontend-GNOME/smuxi-frontend-gnome.in 2017-06-18 11:03:21.000000000 +0200 @@ -7,7 +7,7 @@ # Mono >= 4 SEGVs with Boehm as GC during startup # see https://bugzilla.opensuse.org/show_bug.cgi?id=955080 -if ! mono -V | grep -q -F "version 4."; then +if ! mono -V | grep -q -e "version [4-9]\."; then # HACK: forcibly disabled SGen, as it has a known SEGV bug related to the # Mono.Data.Sqlite binding that does not happen with the boehm GC, see: # https://smuxi.im/issues/show/1062 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/smuxi-1.0.6/src/Server/smuxi-server.in new/smuxi-1.0.7/src/Server/smuxi-server.in --- old/smuxi-1.0.6/src/Server/smuxi-server.in 2016-06-09 22:34:19.000000000 +0200 +++ new/smuxi-1.0.7/src/Server/smuxi-server.in 2017-06-18 11:03:21.000000000 +0200 @@ -7,7 +7,7 @@ # Mono >= 4 SEGVs with Boehm as GC during startup # see https://bugzilla.opensuse.org/show_bug.cgi?id=955080 -if ! mono -V | grep -q -F "version 4."; then +if ! mono -V | grep -q -e "version [4-9]\."; then # HACK: forcibly disabled SGen, as it has a known SEGV bug related to the # Mono.Data.Sqlite binding that does not happen with the boehm GC, see: # https://smuxi.im/issues/show/1062
