Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 27 Oct 2013 01:45:17 +0200
From:      Wolfgang Zenker <wolfgang@lyxys.ka.sub.org>
To:        Eitan Adler <lists@eitanadler.com>
Cc:        freebsd-ports-bugs@freebsd.org, FreeBSD-gnats-submit@freebsd.org
Subject:   Re: ports/182307: icewm doesn't run on current
Message-ID:  <20131026234517.GA96480@lyxys.ka.sub.org>
In-Reply-To: <CAF6rxgn7PkHuh2UtJ3qK7FdySB2XmAP9vT5Hkj_L0aLU2dcE6g@mail.gmail.com>
References:  <201309222252.r8MMqMLc053873@oldred.freebsd.org> <201309222300.r8MN00r2093379@freefall.freebsd.org> <20131008215603.GA25187@lyxys.ka.sub.org> <CAF6rxgn7PkHuh2UtJ3qK7FdySB2XmAP9vT5Hkj_L0aLU2dcE6g@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--IS0zKkzwUGydFO0o
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Hi,

* Eitan Adler <lists@eitanadler.com> [131014 05:56]:
> On Tue, Oct 8, 2013 at 5:56 PM, Wolfgang Zenker
> <wolfgang@lyxys.ka.sub.org> wrote:
> > * FreeBSD-gnats-submit@FreeBSD.org <FreeBSD-gnats-submit@FreeBSD.org> [130923 01:00]:
> >> http://www.freebsd.org/cgi/query-pr.cgi?pr=182307
> ...

> I will try and look into this, but I don't have much time lately.
> IMHO its best if this is fixed upstream.

I'll try to find out how to submit a bug report upstream, but I have
little hope ...
In the meantime, I use an ugly hack to remove the failing calls
(patch attached) so I can start icewm now.

Wolfgang

--IS0zKkzwUGydFO0o
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment; filename="icewm.patch"

*** ylocale.cc.1.3.7_3	2013-10-27 01:11:07.000000000 +0200
--- ylocale.cc	2013-10-27 01:18:09.000000000 +0200
***************
*** 126,133 ****
  iconv_t YLocale::getConverter (const char *from, const char **&to) {
      iconv_t cd = (iconv_t) -1;
  
      while (NULL != *to)
!         if ((iconv_t) -1 != (cd = iconv_open(*to, from))) return cd;
          else ++to;
  
      return (iconv_t) -1;
--- 126,137 ----
  iconv_t YLocale::getConverter (const char *from, const char **&to) {
      iconv_t cd = (iconv_t) -1;
  
+     char *myfrom = (char *)malloc(1 + strlen(from));
+     strcpy(myfrom, from);
+     char *modptr = strstr(myfrom, "//");
+     if (NULL != modptr) *modptr = '\0';
      while (NULL != *to)
!         if ((iconv_t) -1 != (cd = iconv_open(*to, myfrom))) return cd;
          else ++to;
  
      return (iconv_t) -1;

--IS0zKkzwUGydFO0o--



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