[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: gaf-git: unicode causes fork bomb in gschem/po



On Mon, 2010-01-11 at 12:30 +0100, Link wrote:
> Huh, so something as innocuous as a copyright symbol can cause a system
> lock-up. Who'd-a thunk that.
> 
> The problem in question: the file gschem/src/x_dialog.c contains a
> unicode symbol, the copyright symbol (©). When `xgettext' is called
> during the `make' procedure, it chokes on that symbol because it expects
> ASCII. `make', in turn, chokes on `xgettext' failing. It responds by
> spawning another process which calls `xgettext' again. That, of course,
> fails too. The result: a continuously forking `make' process and a
> system that locks up if the user/administrator isn't present to
> control-C it.
> 
> Thankfully, the solution is simple: grep the source tree for
> XGETTEXT_OPTIONS, and append --from-code=UTF-8 wherever it is defined.
> Personally, being a Gentoo user, I've written an ebuild for the git
> version which `sed's the --from-code=UTF-8 in where necessary, but that
> is, of course, rather hacky. Ergo, I hereby politely request the fix to
> be pushed to git HEAD. :)
> 
> N.B.: toolchain versions, in case this doesn't happen for other people:
> * GNU Make 3.81
> * xgettext (GNU gettext-tools) 0.17
> * gcc (Gentoo 4.3.4 p1.0, pie-10.1.5) 4.3.4
> * autoconf (GNU Autoconf) 2.64
> * automake (GNU automake) 1.10.2

I've not seen it myself, but I'm sure we can add the "--from-code=UTF-8"
option to "*/po/Makevars.template" or "*/po/Makevars" if that helps.

I'm actually not sure if it needs to go in */po/Makevars, or whether
that is a generated file. It _seems_ that Makevars.template (counter-
intuitively) is the generated file.

If someone would like to work up a patch against GIT HEAD, I'll give it
a cursory test and push it.

I don't have the time right now to do it myself.

Best wishes,

Peter C.



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user