Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Aug 2015 13:52:28 +0000 (UTC)
From:      Matthias Andree <mandree@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r395090 - in head/graphics/rawtherapee: . files
Message-ID:  <201508231352.t7NDqS6O032014@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mandree
Date: Sun Aug 23 13:52:27 2015
New Revision: 395090
URL: https://svnweb.freebsd.org/changeset/ports/395090

Log:
  Fix devel/glib20-induced abort() with dir monitoring.
  
  Note: untested in poudriere since texlive-base is currently defunct.
  
  I could reproduce the problem on 10.1-amd64 on a bare metal build
  and check that Christoph's patch works, so committing it. Please report
  fall-out in the PR indicated below.
  
  + Bump PORTREVISION to trigger rebuild.
  
  PR:		202250
  Submitted by:	Christoph Moench-Tegeder

Added:
  head/graphics/rawtherapee/files/patch-202250   (contents, props changed)
Modified:
  head/graphics/rawtherapee/Makefile

Modified: head/graphics/rawtherapee/Makefile
==============================================================================
--- head/graphics/rawtherapee/Makefile	Sun Aug 23 13:16:26 2015	(r395089)
+++ head/graphics/rawtherapee/Makefile	Sun Aug 23 13:52:27 2015	(r395090)
@@ -3,7 +3,7 @@
 
 PORTNAME=	rawtherapee
 PORTVERSION=	4.2
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	graphics
 MASTER_SITES=	http://rawtherapee.com/shared/source/
 

Added: head/graphics/rawtherapee/files/patch-202250
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/rawtherapee/files/patch-202250	Sun Aug 23 13:52:27 2015	(r395090)
@@ -0,0 +1,20 @@
+--- rtgui/dirbrowser.cc.orig	2015-08-11 19:57:03.809587000 +0200
++++ rtgui/dirbrowser.cc	2015-08-11 20:16:28.320220000 +0200
+@@ -223,9 +223,14 @@
+   Glib::RefPtr<WinDirMonitor> monitor = Glib::RefPtr<WinDirMonitor>(new WinDirMonitor (iter->get_value (dtColumns.dirname), this));
+   iter->set_value (dtColumns.monitor, monitor);
+ #else
+-  Glib::RefPtr<Gio::FileMonitor> monitor = dir->monitor_directory ();
+-  iter->set_value (dtColumns.monitor, monitor);
+-  monitor->signal_changed().connect (sigc::bind(sigc::mem_fun(*this, &DirBrowser::file_changed), iter, dir->get_parse_name()));
++  Glib::RefPtr<Gio::FileMonitor> monitor;
++  try {
++      monitor = dir->monitor_directory ();
++      iter->set_value (dtColumns.monitor, monitor);
++      monitor->signal_changed().connect (sigc::bind(sigc::mem_fun(*this, &DirBrowser::file_changed), iter, dir->get_parse_name()));
++  } catch (Glib::Error &err) {
++      fprintf (stderr, "cannot create directory monitor: %s\n", err.what().c_str());
++  }
+ #endif
+ }
+ 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201508231352.t7NDqS6O032014>