Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Oct 2017 16:53:01 +0000 (UTC)
From:      =?UTF-8?Q?Romain_Tarti=c3=a8re?= <romain@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r451907 - in head/devel/leatherman: . files
Message-ID:  <201710121653.v9CGr1n1089623@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: romain
Date: Thu Oct 12 16:53:01 2017
New Revision: 451907
URL: https://svnweb.freebsd.org/changeset/ports/451907

Log:
  Woraround crash when LC_* is not set
  
  Puppet and MCollective define LC_ALL=C.UTF-8 to avoid this crash, but it's
  still a problem for many use cases (e.g. cron job storing facts for
  MCollective).
  
  While this does not fix the root cause of the crash that is still under
  investigation, this makes facter usable regardless of the user's envrionment.
  
  PR:		222125
  Submitted by:	ryanb@honeycomb.net

Added:
  head/devel/leatherman/files/patch-locale_src_locale.cc   (contents, props changed)
Modified:
  head/devel/leatherman/Makefile

Modified: head/devel/leatherman/Makefile
==============================================================================
--- head/devel/leatherman/Makefile	Thu Oct 12 16:31:21 2017	(r451906)
+++ head/devel/leatherman/Makefile	Thu Oct 12 16:53:01 2017	(r451907)
@@ -2,7 +2,7 @@
 
 PORTNAME=	leatherman
 PORTVERSION=	1.3.0
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	devel
 
 MAINTAINER=	puppet@FreeBSD.org

Added: head/devel/leatherman/files/patch-locale_src_locale.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/leatherman/files/patch-locale_src_locale.cc	Thu Oct 12 16:53:01 2017	(r451907)
@@ -0,0 +1,12 @@
+--- locale/src/locale.cc.orig	2017-10-10 10:16:35 UTC
++++ locale/src/locale.cc
+@@ -43,6 +43,9 @@ namespace leatherman { namespace locale 
+             gen.add_messages_domain(domain);
+         }
+ 
++        if (id.empty())
++            return g_locales.insert(make_pair(domain, std::locale())).first->second;
++
+         // Ensure creating and adding a new locale is thread-safe.
+         try {
+             return g_locales.insert(make_pair(domain, gen(id))).first->second;



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