Re: hydra and t632

Efraim Flashner <[email protected]> Thu, 22 Oct 2020 10:47:04 +0300
Newsgroups gmane.comp.version-control.rcs.bugs
Message-ID <20201022074704.GV9117@E5400>
--pDtNmxPr5KTxcQ6Z
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 22, 2020 at 03:37:02AM -0400, Thien-Thi Nguyen wrote:
> () Efraim Flashner <[email protected]>
> () Thu, 22 Oct 2020 10:00:10 +0300
>=20
>    [timeout red herring]
>=20
>    And with timeout removed completely:
>=20
>    Command exited with non-zero status 2
>    0.37user 0.13system 0:00.63elapsed 80%CPU (0avgtext+0avgdata 27372maxr=
esident)k
>    192inputs+1552outputs (1major+17323minor)pagefaults 0swaps
>    // output from t632.d/signal-handling-out-and-err:
>    t632.d/x,v  -->  t632.d/x
>    revision 1.1 (locked)
>    writable t632.d/x exists; remove it? [ny](n):
>    co: checkout aborted
>=20
> Hmmm, interesting!  On my system, this blocks completely until i
> type =E2=80=98C-c=E2=80=99, then it PASSes because the underlying =E2=80=
=98co=E2=80=99 DTRT.  So
> it seems timeout has nothing to do w/ the root cause.  Good,
> we're making progress.
>=20
>    > Another possiblity is (c) =E2=80=98co=E2=80=99 is not detecting the =
TTY, but that
>    > is doubtful since t632.d/signal-handling-out-and-err has the line
>    >=20
>    >   writable t632.d/x exists; remove it? [ny](n):=20
>    >=20
>    > which shows =E2=80=98co=E2=80=99 initiating user-interaction, which =
it only does
>    > if it has detected the TTY.
>=20
>    How does it detect the TTY?
>=20
> It boils down to a call to =E2=80=98isatty (STDIN_FILENO)=E2=80=99 (see
> src/rcsgen.c:193).
>=20
>    It could be that it detects the
>    TTY but it's not actually useable.
>=20
> I suppose that "useable" means the =E2=80=98getc (in)=E2=80=99 (see
> src/rcsgen.c:208) works.
>=20
>    From the build environment:
>    output of "which tty":
>    /gnu/store/57xj5gcy1jbl9ai2lnrqnpr0dald9i65-coreutils-8.32/bin/tty
>=20
>    output of "ls -la /dev/tt*":
>    ls: cannot access '/dev/tt*': No such file or directory
>=20
> No, you have to run that program; it prints out the tty:
>=20
>  $ which tty
>  /usr/bin/tty
>  $ tty
>  /dev/pts/6
>  $ ls -l $(tty)
>  crw--w---- 1 ttn tty 136, 6 ott 22 03:32 /dev/pts/6
>=20

Rather than convert it from guile to shell:
(display (which "tty"))
/gnu/store/57xj5gcy1jbl9ai2lnrqnpr0dald9i65-coreutils-8.32/bin/tty

(system* (which "tty"))
not a tty

(system* "ls" "-la" (which "tty"))
-r-xr-xr-x 2 0 0 46584 Jan  1  1970 /gnu/store/57xj5gcy1jbl9ai2lnrqnpr0dald=
9i65-coreutils-8.32/bin/tty




--=20
Efraim Flashner   <[email protected]>   =D7=90=D7=A4=D7=A8=D7=99=D7=9D =
=D7=A4=D7=9C=D7=A9=D7=A0=D7=A8
GPG key =3D A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

--pDtNmxPr5KTxcQ6Z
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl+ROPUACgkQQarn3Mo9
g1EFBg//ag5DetUO7DAvGXo75kmsK5gZ1xi8tZeOS47EJhh2d2dk+BGDPItbYKDj
SvENeSu7S3cDnNlBq7959ssh1Tz+8AYGBt+hONXnX/32q7uRkVaqI7vB4CwNmFjP
dHN9ADM5t9b2SyhfAGPTMSdRtHbQUPHm9hxgSzdGygvwJocXwAH5+jYU5ZREs4Zs
S0/fzQZ4kalZW+ijy/UJb2beteb3KHmTrmXdIMNh+nSTNfwcHwsw6Hr/SSweR3nX
hm+XwUg203cmK9+wLTM456xtp4XZqEcQx9PC6b4wdf+E+frrrAGfKkSs/7gBcBfO
NPguLtxTSi9hzepOxwhGBpiVtL6GI1g9vS5//3OmE2/EZIj//Pj0jtKkZgWMEASB
kYIPR301iKDas9+YEpsFniFtWp17aGMbV001yp9r2ydFk3kSYI/Vty0ZMSPYqPOL
3vFoUAsRaD41Kj2Xw2m/IHvNhryRvSSmpnkZEZ2cqN3A3RTruxo++4oQcnr8OSvL
8N2cadkCaB+S84hz+4LcF9lWqCGkW9inyq5b3lmMVrteky+kfMLf73XgRcuxBgpB
tB0S2NSA+lyvxQaaVAzjK2SYDy4iMiUCXEQ1L2DXQuLOSY+TL5kvPrBOVNoHGlBD
3TLbB3jNzgHbSgNPNeAJHHsZHXJdfSajxxzwcoHSRYaGTDIM2E4=
=U6dN
-----END PGP SIGNATURE-----

--pDtNmxPr5KTxcQ6Z--