r3417 process.php: detect the case, when ophandler function does not exist
authorDenis Ovsienko <infrastation@yandex.ru>
Tue, 13 Apr 2010 15:03:30 +0000 (15:03 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Tue, 13 Apr 2010 15:03:30 +0000 (15:03 +0000)
process.php

index c1f741bb6a5a474052b2bdd32576c448dad0d834..d139361e3695eb0b335cbacf77955dccf4e9272c 100644 (file)
@@ -22,6 +22,13 @@ if (!isset ($ophandler[$pageno][$tabno][$op]))
        throw new RuntimeException("Invalid request in operation broker: page '${pageno}', tab '${tabno}', op '${op}'");
 }
 
+if (!function_exists ($ophandler[$pageno][$tabno][$op]))
+       throw new RuntimeException
+       (
+               "Dispatching error at position '${pageno}-${tabno}-${op}': function '" .
+               $ophandler[$pageno][$tabno][$op] . "' does not exist."
+       );
+
 // We have a chance to handle an error before starting HTTP header.
 if (!isset ($delayauth[$pageno][$tabno][$op]) and !permitted())
        $location = buildWideRedirectURL (oneLiner (157)); // operation not permitted