Supported Versions: PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8
Installs a signal handler
<?php pcntl_signal(int $signal, callable|int $handler, bool $restart_syscalls = true): bool
<?php             @mkdir($directory, 0777, true);

            if ($realDir = realpath($directory)) {

                pcntl_async_signals(true);

                pcntl_signal(SIGINT, function () use ($realDir) {

                    $fs = new Filesystem();

                    $fs->removeDirectory($realDir);

                    exit(130);

                });

            }

        }
<?php     {

        if (function_exists('pcntl_async_signals') && function_exists('pcntl_signal')) {

            pcntl_async_signals(true);

            pcntl_signal(SIGINT, array($this, 'revertComposerFile'));

            pcntl_signal(SIGTERM, array($this, 'revertComposerFile'));

            pcntl_signal(SIGHUP, array($this, 'revertComposerFile'));

        }
<?php         if (function_exists('pcntl_async_signals') && function_exists('pcntl_signal')) {

            pcntl_async_signals(true);

            pcntl_signal(SIGINT, array($this, 'revertComposerFile'));

            pcntl_signal(SIGTERM, array($this, 'revertComposerFile'));

            pcntl_signal(SIGHUP, array($this, 'revertComposerFile'));

        }
<?php             pcntl_async_signals(true);

            pcntl_signal(SIGINT, array($this, 'revertComposerFile'));

            pcntl_signal(SIGTERM, array($this, 'revertComposerFile'));

            pcntl_signal(SIGHUP, array($this, 'revertComposerFile'));

        }



        $this->file = Factory::getComposerFile();
<?php         if (!$shutdownRegistered) {

            if (function_exists('pcntl_async_signals') && function_exists('pcntl_signal')) {

                pcntl_async_signals(true);

                pcntl_signal(SIGINT, function ($sig) {

                    exit(130);

                });

            }



            $shutdownRegistered = true;
<?php         if ($handleInterruptsUnix) {

            pcntl_async_signals(true);

            $prevHandler = pcntl_signal_get_handler(SIGINT);

            pcntl_signal(SIGINT, function ($sig) use ($runCleanup, $prevHandler, $io) {

                $io->writeError('Received SIGINT, aborting', true, IOInterface::DEBUG);

                $runCleanup();



                if (!in_array($prevHandler, array(SIG_DFL, SIG_IGN), true)) {

                    call_user_func($prevHandler, $sig);

                }



                exit(130);

            });

        }

        if ($handleInterruptsWindows) {

            $windowsHandler = function ($event) use ($runCleanup, $io) {
<?php             $runCleanup();



            if ($handleInterruptsUnix) {

                pcntl_signal(SIGINT, $prevHandler);

            }

            if ($handleInterruptsWindows) {

                sapi_windows_set_ctrl_handler($windowsHandler, false);
<?php         }



        if ($handleInterruptsUnix) {

            pcntl_signal(SIGINT, $prevHandler);

        }

        if ($handleInterruptsWindows) {

            sapi_windows_set_ctrl_handler($windowsHandler, false);