On Sat, 6 Dec 2008 14:40:47 -0400
"Brendan MacDonell" <macdonellba_AT_gmail.com> wrote:
> On Sat, Dec 6, 2008 at 2:20 PM, Guillaume Quintin
> <coincoin169g_AT_gmail.com> wrote:
> > I just tried the close(0) patch but it does not change anything.
> > And I found something very weird. I told you that in the previous
> > version of dwm (5.2) with the .xinitrc containing the "while | dwm"
> > all worked fine and I am sure of that. I quitted dwm-5.2 many times
> > with a lot of openned windows and all worked fine. But now, when I
> > reinstall dwm-5.2 I get the same problem than in dwm-5.3 and
> > dwm-5.3.1, "double-fork", "simple-fork" and re-"double-fork". I
> > don't understand why.
>
> Is there any chance you may have recently updated your version of
> xorg-server? I know the change just got pushed out recently on
> Archlinux, and it seems to have changed some corner cases that people
> previously took for granted.
>
>
> In response to your idea for executing status scripts, that's roughly
> how my patched version of dwm does it, though mine takes the status
> script name (or possibly even the content) as an argument, and stores
> the entirety of argv so that dwm can re-exec itself to restart/change
> the script. In any case, the function you're looking for to replace a
> fid with another is 'dup2(replacement, to_replace)'.
>
> On Sat, Dec 6, 2008 at 2:20 PM, Guillaume Quintin
> <coincoin169g_AT_gmail.com> wrote:
> > I just tried the close(0) patch but it does not change anything.
> > And I found something very weird. I told you that in the previous
> > version of dwm (5.2) with the .xinitrc containing the "while | dwm"
> > all worked fine and I am sure of that. I quitted dwm-5.2 many times
> > with a lot of openned windows and all worked fine. But now, when I
> > reinstall dwm-5.2 I get the same problem than in dwm-5.3 and
> > dwm-5.3.1, "double-fork", "simple-fork" and re-"double-fork". I
> > don't understand why.
> >
> > Why don't we change the way dwm gets its status text ? For example
> > we could use the SIGALRM signal to call a "spawn2" :
> >
> > spawn2()
> > {
> > check for a certain shell script ".dwmstatus";
> > if it is not present then return;
> > create some pipe p[];
> > (double or simple)-fork;
> > in the child process
> > {
> > close(0);
> > close(1);
> > close(2);
> > set stdout to p[1]; /* I don't know how exactly */
> > execv(".dwmstatus");
> > }
> > /* Here is dwm */
> > read status from p[0];
> > display status;
> > }
> >
> > This will take only a few LOC, because all the reading p[0] part
> > will be in fact the reading-stdin code from the run() function which
> > will not be needed anymore. This has the advantages that one can
> > change the status when dwm is running and there are no more
> > "quitting" problem. This is just an idea, forgive me not to propose
> > some real code. Well tell me what you think of this idea.
> >
> > --
> > Kind regards,
> > Guillaume Quintin.
> >
> >
>
Yes I pacmaned a new xorg-server and I move from 32 bits to 64 bits
recently.
-- Kind regards, Guillaume Quintin.Received on Sat Dec 06 2008 - 18:41:36 UTC
This archive was generated by hypermail 2.2.0 : Sat Dec 06 2008 - 18:48:08 UTC