[winGRASS] Re: Xdriver on win98 - FIX provided

Mike Thomas miketh at brisbane.paradigmgeo.com
Tue Aug 21 18:47:25 EDT 2001


Hi all.

I'm widening to wingrass a discussion from yesterday as Markus pointed out
that I had not included the list - my apologies to all.

Malcolm et al. might have some comments - we've been discussing ways of
aligning the Windows XDriver source code with the other platforms to
minimise impact on code maintenance, support and distribution, while
maximising user base in a sustainable manner.

My suggestion to ease the load on Andreas as he prepares a WinGrass CD is
that we just officially support NT for Grass 5.00 and separately distribute
__W98__ patched drivers as a small zip file clearly marked as "Thrill
seeking test pilots only".  These executables can simply be copied over the
main distribution by interested users.

If user demand later dictates, then we can also officially support the 98/ME
strand of Windows in subsequent releases.

This discussion was triggered because we've recently added Malcolm Blue's
__W98__ patch to CVS.

As has previously been discussed on one of the lists, I usually execute:

   d.mon select=x0

after:

   d.mon x0

as a result of this patch.  Other than that everything seems fine.

Cygwin doesn't seem to know much about sockets, so maybe (if socket cloning
is the problem with fork()) it just hasn't come up elsewhere.

Cheers

Mike Thomas.


----- Original Message -----
From: Glynn Clements <glynn.clements at virgin.net>
To: Mike Thomas <mthomas at gil.com.au>
Cc: Mike Thomas <miketh at brisbane.paradigmgeo.com>; <neteler at itc.it>;
<Andreas.Lange at Rhein-Main.de>
Sent: Wednesday, August 22, 2001 1:30 AM
Subject: Re: Xdriver on win98 - FIX provided


>
> Mike Thomas wrote:
>
> > Undefining __W98__ in devices/lib/main.c gives this error:
>
> --------------------------------------------------------------------------
-----------
> > GRASS://e/cvs/grass > using default visual which is TrueColor
> > ncolors: 16777216
> > Graphics driver [x0] started
> > XIO:  fatal IO error 108 (The descriptor is a file, not a socket) on X
> > server "127.0.0.1:0.0"
> >       after 35 requests (31 known processed) with 0 events remaining.
>
> --------------------------------------------------------------------------
-----------
> >
> > Undefing globally gives the same error.
> >
> > Maybe the socket is not being cloned properly?
>
> That would seem to explain it. However, cloning of descriptors across
> a fork() is a pretty fundamental aspect of Unix process management, so
> any flaw here would presumably affect more than just GRASS.
>
> Note: the fact that the fork() doesn't occur until right before the
> beginning of the main loop is an explicit design decision. This way,
> mon.start is guaranteed not to complete until after everything is set
> up and the monitor is ready to process commands.
>
> One side effect of the __W98__ patch is that mon.start may complete
> even before the socket is ready to accept connections. This could
> cause problems when using "d.mon start=..." (without the "-s" switch),
> as the subsequent mon.select could fail.
>
> --
> Glynn Clements <glynn.clements at virgin.net>
>




More information about the grass-windows mailing list