[bug #5496] (grass) Re: [GRASS-dev] v.digit: Could not set Tcl system encoding fixed (bug #4110)

this bug's URL: http://intevation.de/rt/webrt?serial_num=5496
-------------------------------------------------------------------------

Glynn Clements wrote:

> > I'm pretty sure that the problem is that lib/form/form.c doesn't call
> > Tcl_Main(), so the library path doesn't get set, so Tcl can't find its
> > .enc files.
> >
> > Realistically, if you are trying to use Tcl/Tk and your program
> > *doesn't* look very much like tkAppInit.c, all bets are off.
> >
> > Rather than trying to process the data from the form library in C,
> > form.c should just register the commands then do the rest in Tcl.
>
> Since I know nothing about tcl, I'll leave that to the experts. AFAIK
> form.c was
> originally written by Radim.

The attached patch appears to work, insofar as v.digit appears to work
as before, minus the encoding errors. OTOH, I know next to nothing
about v.digit (or the vector stuff in general), so it would probably
be a good idea for it to be tested by someone who is familiar with
v.digit.

Essentially, the form utility (lib/form/form.c) has been rewritten as
a typical "extended wish", with the communication with the form
library being performed in Tcl.

As I haven't had any response either way on this, I've committed the
changes.

--
Glynn Clements <glynn@gclements.plus.com>

--- Headers Follow ---

From glynn@gclements.plus.com Thu Feb 15 22:00:21 2007

Return-Path: <glynn@gclements.plus.com>
Delivered-To: grass-bugs@lists.intevation.de
Received: from kolab.intevation.de (salmakis.hq.intevation.de [192.168.11.9])
  by lists.intevation.de (Postfix) with ESMTP id 18D19101EE8
  for <grass-bugs@lists.intevation.de>; Thu, 15 Feb 2007 22:00:21 +0100 (CET)
Received: from localhost (localhost.localdomain [127.0.0.1])
  by kolab.intevation.de (Postfix) with ESMTP id 0480914B75CE
  for <grass-bugs@lists.intevation.de>; Thu, 15 Feb 2007 22:00:21 +0100 (CET)
Received: from localhost (localhost.localdomain [127.0.0.1])
  by kolab.intevation.de (Postfix) with ESMTP id 9FC2214B75CD
  for <grass-bugs@lists.intevation.de>; Thu, 15 Feb 2007 22:00:19 +0100 (CET)
Received: from cerise.gclements.plus.com (82-71-30-52.dsl.in-addr.zen.co.uk [82.71.30.52])
  by kolab.intevation.de (Postfix) with ESMTP id 69C0314B75CB
  for <grass-bugs@intevation.de>; Thu, 15 Feb 2007 22:00:19 +0100 (CET)
Received: from cerise.gclements.plus.com (localhost [127.0.0.1])
  by cerise.gclements.plus.com (8.13.7/8.13.7) with ESMTP id l1FL0HcX018944;
  Thu, 15 Feb 2007 21:00:17 GMT
Received: (from glynn@localhost)
  by cerise.gclements.plus.com (8.13.7/8.13.7/Submit) id l1FL0HXq018941;
  Thu, 15 Feb 2007 21:00:17 GMT
From: Glynn Clements <glynn@gclements.plus.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-ID: <17876.51681.722004.212265@cerise.gclements.plus.com>
Date: Thu, 15 Feb 2007 21:00:17 +0000
To: Markus Neteler <neteler@itc.it>,
  Request Tracker <grass-bugs@intevation.de>,
  grass developers list <grass-dev@grass.itc.it>
Subject: Re: [GRASS-dev] v.digit: Could not set Tcl system encoding fixed
  (bug #4110)
In-Reply-To: <17869.56760.385929.175604@cerise.gclements.plus.com>
References: <45C9995E.7010700@itc.it>
  <45C9F585.30406@o2.pl>
  <45CAD4F8.5050400@itc.it>
  <17867.3200.384675.355130@cerise.gclements.plus.com>
  <45CB36F6.1070906@itc.it>
  <17867.42607.267308.193576@cerise.gclements.plus.com>
  <45CC2C73.5030206@itc.it>
  <17869.56760.385929.175604@cerise.gclements.plus.com>
X-Mailer: VM 7.07 under 21.4 (patch 20) "Double Solitaire" XEmacs Lucid
X-Virus-Scanned: by amavisd-new at intevation.de
X-Spam-Status: No, score=-4.665 tagged_above=-999 required=3
tests=[BAYES_00=-5, DNS_FROM_RFC_ABUSE=0.2, FORGED_RCVD_HELO=0.135]
X-Spam-Score: -4.665
X-Spam-Level:

-------------------------------------------- Managed by Request Tracker