Revert "wfShellExec: Work around PHP 5.3 stream_select() issue"
authorKevin Israel <pleasestand@live.com>
Sat, 13 Feb 2016 00:40:49 +0000 (19:40 -0500)
committerKevin Israel <pleasestand@live.com>
Thu, 16 Jun 2016 06:36:29 +0000 (02:36 -0400)
No longer needed. Currently, MediaWiki supports neither PHP 5.3
nor HHVM 3.4 or lower. The minimum HHVM version stated in the
Compatibility section of the RELEASE-NOTES file is 3.6.5.

This reverts commit 8bd6f698ccb990c9a9d37f495b8b5b7620832018.

Change-Id: I2edd25c4ce00eb324f7f6e04b2034ad28f7c6964

includes/GlobalFunctions.php

index d5c6553..66e2440 100644 (file)
@@ -2499,14 +2499,6 @@ function wfShellExec( $cmd, &$retval = null, $environ = [],
        $eintr = defined( 'SOCKET_EINTR' ) ? SOCKET_EINTR : 4;
        $eintrMessage = "stream_select(): unable to select [$eintr]";
 
-       // Build a table mapping resource IDs to pipe FDs to work around a
-       // PHP 5.3 issue in which stream_select() does not preserve array keys
-       // <https://bugs.php.net/bug.php?id=53427>.
-       $fds = [];
-       foreach ( $pipes as $fd => $pipe ) {
-               $fds[(int)$pipe] = $fd;
-       }
-
        $running = true;
        $timeout = null;
        $numReadyPipes = 0;
@@ -2539,9 +2531,8 @@ function wfShellExec( $cmd, &$retval = null, $environ = [],
                                break;
                        }
                }
-               foreach ( $readyPipes as $pipe ) {
+               foreach ( $readyPipes as $fd => $pipe ) {
                        $block = fread( $pipe, 65536 );
-                       $fd = $fds[(int)$pipe];
                        if ( $block === '' ) {
                                // End of file
                                fclose( $pipes[$fd] );