[MacPorts] #56214: inkscape @ 0.92.2_2 all variants: libc++abi.dylib Glib::ConvertError
MacPorts
noreply at macports.org
Tue Apr 17 19:19:31 UTC 2018
#56214: inkscape @ 0.92.2_2 all variants: libc++abi.dylib Glib::ConvertError
-------------------------+---------------------
Reporter: streincorp | Owner: dbevans
Type: defect | Status: closed
Priority: Normal | Milestone:
Component: ports | Version: 2.4.2
Resolution: fixed | Keywords:
Port: inkscape |
-------------------------+---------------------
Changes (by neverpanic):
* status: accepted => closed
* resolution: => fixed
Comment:
In [changeset:"e864b2340be9ef003d8ff4aef92e7151d06287dd/macports-ports"
e864b2340be9ef003d8ff4aef92e7151d06287dd/macports-ports]:
{{{
#!ConfigurableCommitTicketReference repository="macports-ports"
revision="e864b2340be9ef003d8ff4aef92e7151d06287dd"
glibmm: Fix character set conversion with libc++
glibmm contains code that attempts to convert between std::wstring and
glibmm's Glib::ustring string class, which stores characters in UTF-8.
This conversion code was using a fallback solution that eventually calls
iconv to convert from the "WCHAR_T" character set to UTF-8.
On macOS, iconv --list does not show WCHAR_T as supported character set
and comments in the libiconv code handling WCHAR_T suggest it was
written for glibc, which is not used on macOS. Consequently, the
conversion failed, which caused Glib::ustring to throw an exception.
This exception was not caught by inkscape and caused a crash when
starting inkscape, rendering it useless.
Fortunately, glibmm already contained code to deal with libc++'s
std::wstrings, but it was guaded by a check for the __STDC_ISO_10646__
prepocessor define. Allowing _LIBCPP_VERSION in addition to
__STDC_ISO_10646__ makes code compiled against libc++ use this code path
and solves the issue.
Closes: https://trac.macports.org/ticket/56214
}}}
--
Ticket URL: <https://trac.macports.org/ticket/56214#comment:12>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list