1
0
Fork 0
mirror of https://github.com/archtechx/tenancy.git synced 2026-05-06 18:04:03 +00:00

Skip null parameters, throw for other non-string parameters

This commit is contained in:
lukinovec 2026-05-01 09:34:11 +02:00
parent e8168eb0b9
commit 9611a05f35

View file

@ -67,13 +67,17 @@ trait ValidatesDatabaseParameters
$allowedCharacters ??= static::allowedParameterCharacters();
foreach ((array) $parameters as $parameter) {
if (! is_string($parameter)) {
if (is_null($parameter)) {
// Skip if there's nothing to validate
// (e.g. when $tenant->database()->getUsername() of an
// improperly created tenant is null and it gets passed).
continue;
}
if (! is_string($parameter)) {
throw new InvalidArgumentException("Parameter has to be a string.");
}
foreach (str_split($parameter) as $character) {
if (! str_contains($allowedCharacters, $character)) {
throw new InvalidArgumentException("Forbidden character '{$character}' in parameter.");