]> git.donarmstrong.com Git - debhelper.git/commitdiff
Avoid open fd 5 or 6 breaking buildsystem test suite. Closes: #596679
authorJoey Hess <joey@kitenet.net>
Mon, 13 Sep 2010 17:04:45 +0000 (13:04 -0400)
committerJoey Hess <joey@kitenet.net>
Mon, 13 Sep 2010 17:04:45 +0000 (13:04 -0400)
debian/changelog
t/buildsystems/buildsystem_tests

index f16312abed5d6d44698474edbb64a392c78a98c7..3e8482d6a61d2d50aae6e9b0e10588308c5868d1 100644 (file)
@@ -4,6 +4,7 @@ debhelper (8.1.0) UNRELEASED; urgency=low
     python-dbg is run it does not win and result in scripts having it in
     the shebang line. Closes: #589759
   * Man page fixes about what program -u passes params to. Closes: #593342
+  * Avoid open fd 5 or 6 breaking buildsystem test suite. Closes: #596679
 
  -- Joey Hess <joeyh@debian.org>  Sat, 07 Aug 2010 11:27:24 -0400
 
index 15c902af7f19dd653cb36e44105979198ac2925d..398fd9680873a80f0876bc463ede9810c01a22b3 100755 (executable)
@@ -499,19 +499,27 @@ ok ( ! -e 'bld', "bld got deleted too" );
 #### Test parallel building and related options / routines
 @tmp = ( $ENV{MAKEFLAGS}, $ENV{DEB_BUILD_OPTIONS} );
 
+use POSIX;
+sub closefd {
+       POSIX::close(shift);
+}
+
 # Test is_make_jobserver_unavailable and clean_jobserver_makeflags.
 
 $ENV{MAKEFLAGS} = "--jobserver-fds=103,104 -j";
+closefd(103); closefd(104);
 ok(is_make_jobserver_unavailable(), "unavailable jobserver" );
 clean_jobserver_makeflags();
 ok(! exists $ENV{MAKEFLAGS}, "unset makeflags");
 
 $ENV{MAKEFLAGS} = "-a --jobserver-fds=103,104 -j -b";
+closefd(103); closefd(104);
 ok(is_make_jobserver_unavailable(), "unavailable jobserver" );
 clean_jobserver_makeflags();
 is($ENV{MAKEFLAGS}, "-a -b", "clean makeflags");
 
 $ENV{MAKEFLAGS} = " --jobserver-fds=1,2 -j  ";
+# fds left open
 ok(! is_make_jobserver_unavailable(), "available jobserver" );
 clean_jobserver_makeflags();
 ok(! exists $ENV{MAKEFLAGS}, "unset makeflags");
@@ -537,6 +545,7 @@ clean_jobserver_makeflags();
 is($ENV{MAKEFLAGS}, "-a -j6 --jobs=7", "clean makeflags does not remove -j or --jobs");
 
 $ENV{MAKEFLAGS} = "-j6 --jobserver-fds=5,6 --jobs=8";
+closefd(5); closefd(6);
 ok(is_make_jobserver_unavailable(), "unavailable jobserver");
 clean_jobserver_makeflags();
 is($ENV{MAKEFLAGS}, "-j6 --jobs=8", "jobserver options removed");