diff --git a/pkgs/applications/graphics/rawtherapee/default.nix b/pkgs/applications/graphics/rawtherapee/default.nix
index 14cbf478bd4..50eb7749031 100644
--- a/pkgs/applications/graphics/rawtherapee/default.nix
+++ b/pkgs/applications/graphics/rawtherapee/default.nix
@@ -16,6 +16,10 @@ stdenv.mkDerivation rec {
   buildInputs = [ pkgconfig cmake pixman libpthreadstubs gtkmm2 libXau libXdmcp
     lcms2 libiptcdata libcanberra_gtk2 fftw expat pcre libsigcxx ];
 
+  patches = [
+    ./fix-glibmm-output.patch
+  ];
+
   cmakeFlags = [
     "-DPROC_TARGET_NUMBER=2"
   ];
diff --git a/pkgs/applications/graphics/rawtherapee/fix-glibmm-output.patch b/pkgs/applications/graphics/rawtherapee/fix-glibmm-output.patch
new file mode 100644
index 00000000000..3c87ce64e26
--- /dev/null
+++ b/pkgs/applications/graphics/rawtherapee/fix-glibmm-output.patch
@@ -0,0 +1,23 @@
+From ca0afa8d5f3cc7d09b6bab32d155a87c550f0d7b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Fl=C3=B6ssie?= <floessie.mail@gmail.com>
+Date: Sat, 1 Oct 2016 12:38:24 +0200
+Subject: [PATCH] Fix incompatibility with glibmm 2.50 (#3440)
+
+Kudos to @Hombre57 for the suggestion.
+---
+ rtgui/dirbrowser.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/rtgui/dirbrowser.cc b/rtgui/dirbrowser.cc
+index d3fc8bf..6f25f0f 100644
+--- a/rtgui/dirbrowser.cc
++++ b/rtgui/dirbrowser.cc
+@@ -59,7 +59,7 @@ std::vector<Glib::ustring> listSubDirs (const Glib::RefPtr<Gio::File>& dir, bool
+     } catch (const Glib::Exception& exception) {
+ 
+         if (options.rtSettings.verbose) {
+-            std::cerr << "Failed to list subdirectories of \"" << dir << "\": " << exception.what () << std::endl;
++            std::cerr << "Failed to list subdirectories of \"" << dir->get_basename() << "\": " << exception.what () << std::endl;
+         }
+ 
+     }