If an error is occurring that code should show the error.
if it is not showing an error, there are 2 possibilities:
1) I was wrong initially, and the problem is not caused by a php error
2) the server is configured to not allow error reporting to be turned on using ini_set.
I'm going to assume it is possibility 1, wouldn't be the first time i guessed wrong, and it certainly wont be the last.
If it's not a php error, my next guess is that the server does not have the $_SERVER["HTTP_REFERER"] variable enabled.
try changing the following code at line 1091 - 1093:
else if (($_SERVER["REQUEST_METHOD"] == "POST") && (isset($_SERVER["HTTP_REFERER"]) && strpos(urldecode($_SERVER["HTTP_REFERER"]), urldecode($_SERVER["SERVER_NAME"].$_SERVER["PHP_SELF"])) > 0) && isset($_POST)) {
$WA_Store_Cart->redirStr = "checkout_success.php";
}
to:
else if (isset($_POST["Submit_order"])) {
$WA_Store_Cart->redirStr = "checkout_success.php";
}