--- ../ezpublish-4.1.3/lib/ezutils/classes/ezextension.php 2009-06-03 20:51:14.000000000 +0200 +++ lib/ezutils/classes/ezextension.php 2009-07-15 21:03:56.000000000 +0200 @@ -446,8 +446,22 @@ // only use reflection if we have params to avoid exception on objects withouth constructor if ( $handlerParams !== null && is_array( $handlerParams ) && count( $handlerParams ) > 0 ) { - $reflection = new ReflectionClass( $handler ); - $object = $reflection->newInstanceArgs( $handlerParams ); + switch ( count( $handlerParams ) ) { + case 1: $object = new $handler($handlerParams[0]); break; + case 2: $object = new $handler($handlerParams[0], $handlerParams[1]); break; + case 3: $object = new $handler($handlerParams[0], $handlerParams[1], $handlerParams[2]); break; + case 4: $object = new $handler($handlerParams[0], $handlerParams[1], $handlerParamss[2], $handlerParams[3]); break; + case 5: $object = new $handler($handlerParams[0], $handlerParams[1], $handlerParamss[2], $handlerParams[3], $handlerParams[4]); break; + + case 6: $object = new $handler($handlerParams[0], $handlerParams[1], $handlerParamss[2], $handlerParams[3], $handlerParams[4], $handlerParams[5]); break; + + case 7: $object = new $handler($handlerParams[0], $handlerParams[1], $handlerParamss[2], $handlerParams[3], $handlerParams[4], $handlerParams[5], $handlerParams[6]); break; + default: + { + $reflection = new ReflectionClass( $handler ); + $object = $reflection->newInstanceArgs( $handlerParams ); + } + } } else {