Subject: CVS commit: pkgsrc/misc/screen
From: Alan Barrett
Date: 2012-09-15 11:14:53
Message id: 20120915091453.B3D69175DD@cvs.netbsd.org

Log Message:
Move the NetBSD-specific part of screen's pty.c to the right place.

This commit changes patch-aa so that the patched version
of pty.c contains:

    ... other OS-specific code
    ... NetBSD-specific openpty() code (from patch-aa)
    ... generic openpty() code
    ... last resort code

instead of the previous:

    ... other OS-specific code
    ... generic openpty() code
    ... NetBSD-specific openpty() code (from patch-aa)
    ... last resort code

History behind this problem:

The NetBSD-specific openpty() code was added in revision 1.1
of misc/screen/patches/patch-aa.  (See PR pkg/16901.)  At that
time, pkgsrc used screen-3.9.11, and the upstream version of
screen did not use openpty() at all.  The patch added an "#if
defined(__NetBSD__)" block as the last OS-specific section in
pty.c, which then had:

    ... other OS-specific code
    ... NetBSD-specific openpty() code (from patch-aa)
    ... last resort code

In screen-3.9.15, upstream added code in pty.c to use openpty().
This was imported to pkgsrc on 2003-03-15.  At that time, pkgsrc's
patch-aa accidentally inserted the NetBSD-specific code below
instead of above the new code, so the patched version of pty.c
had:

    ... other OS-specific code
    ... generic openpty() code         (from upstream)
    ... NetBSD-specific openpty() code (from patch-aa)
    ... last resort code

The above is obviously wrong because the generic openpty() code
would be used instead of the NetBSD-specific code, assuming
HAVE_OPENPTY was defined by the configure script.

This problem was reported in PR pkg/25317, but the patch in the PR
was not understood so it was not applied.

This commit changes patch-aa so that the patched version of pty.c
contains:

    ... other OS-specific code
    ... NetBSD-specific openpty() code (from patch-aa)
    ... generic openpty() code         (from upstream)
    ... last resort code

However, it still doesn't work on NetBSD with ptyfs mounted.

Files:
RevisionActionfile
1.84modifypkgsrc/misc/screen/Makefile
1.33modifypkgsrc/misc/screen/distinfo
1.11modifypkgsrc/misc/screen/patches/patch-aa