Modifying core files is not a recommended practice at all. Luckily there is another solution, but first let me explain what this line is doing:
The three lines before try to figure out if PHP is allowed to execute shell commands and set
$isShellDisabled = true if not.
If it is false,
cron.php will start two
cron.sh processes in the background
cron.sh /path/to/cron.php -mdefault
cron.sh /path/to/cron.php -malways
cron.sh in turn, runs
cron.php (with the same arguments) if it doesn't find a running cron.php process. At least in theory, apparently checking for a running process does not work if the process has been spawned from cron.php as described above.
$isShellDisabled is true, this is not possible and
cron.php will run in both modes ("default" and "always") one after another.
You can leave out the first step of all this and set up your crontab directly with two jobs:
cron.sh cron.php -mdefault
cron.sh cron.php -malways
(with full path to cron.sh and cron.php) This way you'll have a working check if there is already a running process, but you cannot specify the path to the PHP binary to be used.
If that's important, use this instead:
/path/to/php cron.php -mdefault
/path/to/php cron.php -malways