summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--includes/menu.inc5
1 files changed, 4 insertions, 1 deletions
diff --git a/includes/menu.inc b/includes/menu.inc
index 8b073d111..8ca099841 100644
--- a/includes/menu.inc
+++ b/includes/menu.inc
@@ -2276,7 +2276,10 @@ function _menu_router_build($callbacks) {
// Extract load and to_arg functions.
foreach ($parts as $k => $part) {
$match = FALSE;
- if (preg_match('/^%([a-z_]*)$/', $part, $matches)) {
+ // Look for wildcards in the form allowed to be used in PHP functions,
+ // because we are using these to construct the load function names.
+ // See http://php.net/manual/en/language.functions.php for reference.
+ if (preg_match('/^%([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)$/', $part, $matches)) {
if (empty($matches[1])) {
$match = TRUE;
$load_functions[$k] = NULL;