Make sure to not pass null to DateTime::createFromFormat

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
This commit is contained in:
Côme Chilliet 2022-11-14 16:23:50 +01:00
джерело ea377578ad
коміт 9ba9f9a7dc
Не вдалося знайти GPG ключ що відповідає даному підпису
Ідентифікатор GPG ключа: A3E2F658B28C760A
4 змінених файлів з 8 додано та 9 видалено

@ -55,7 +55,7 @@ use SearchDAV\Query\Order;
use SearchDAV\Query\Query;
class FileSearchBackend implements ISearchBackend {
const OPERATOR_LIMIT = 100;
public const OPERATOR_LIMIT = 100;
/** @var CachingTree */
private $tree;
@ -432,7 +432,7 @@ class FileSearchBackend implements ISearchBackend {
if (is_numeric($value)) {
return max(0, 0 + $value);
}
$date = \DateTime::createFromFormat(\DateTimeInterface::ATOM, $value);
$date = \DateTime::createFromFormat(\DateTimeInterface::ATOM, (string)$value);
return ($date instanceof \DateTime && $date->getTimestamp() !== false) ? $date->getTimestamp() : 0;
default:
return $value;

@ -123,7 +123,7 @@ class FTP extends Common {
return $item['type'] === 'cdir';
}));
if ($currentDir) {
$time = \DateTime::createFromFormat('YmdHis', $currentDir['modify']);
$time = \DateTime::createFromFormat('YmdHis', $currentDir['modify'] ?? '');
if ($time === false) {
throw new \Exception("Invalid date format for directory: $currentDir");
}
@ -269,7 +269,7 @@ class FTP extends Common {
case 'wb':
case 'wb+':
$useExisting = false;
// no break
// no break
case 'a':
case 'ab':
case 'r+':

@ -1042,8 +1042,8 @@ class ShareByMailProvider implements IShareProvider {
$share->setShareTime($shareTime);
$share->setSharedWith($data['share_with']);
$share->setPassword($data['password']);
$passwordExpirationTime = \DateTime::createFromFormat('Y-m-d H:i:s', $data['password_expiration_time']);
$share->setPasswordExpirationTime($passwordExpirationTime !== false? $passwordExpirationTime : null);
$passwordExpirationTime = \DateTime::createFromFormat('Y-m-d H:i:s', $data['password_expiration_time'] ?? '');
$share->setPasswordExpirationTime($passwordExpirationTime !== false ? $passwordExpirationTime : null);
$share->setLabel($data['label']);
$share->setSendPasswordByTalk((bool)$data['password_by_talk']);
$share->setHideDownload((bool)$data['hide_download']);
@ -1140,7 +1140,6 @@ class ShareByMailProvider implements IShareProvider {
* @throws ShareNotFound
*/
protected function getRawShare($id) {
// Now fetch the inserted share and create a complete share object
$qb = $this->dbConnection->getQueryBuilder();
$qb->select('*')

@ -109,12 +109,12 @@ class RequestTime implements ICheck {
}
$values = json_decode($value, true);
$time1 = \DateTime::createFromFormat('H:i e', $values[0]);
$time1 = \DateTime::createFromFormat('H:i e', (string)$values[0]);
if ($time1 === false) {
throw new \UnexpectedValueException($this->l->t('The given start time is invalid'), 3);
}
$time2 = \DateTime::createFromFormat('H:i e', $values[1]);
$time2 = \DateTime::createFromFormat('H:i e', (string)$values[1]);
if ($time2 === false) {
throw new \UnexpectedValueException($this->l->t('The given end time is invalid'), 4);
}