Skip to content

Commit 446bb7b

Browse files
committed
Session: don't call session_set_cookie_params() when values was not changed [Closes #134][Closes #23]
1 parent 9d0cbd1 commit 446bb7b

File tree

1 file changed

+2
-4
lines changed

1 file changed

+2
-4
lines changed

src/Http/Session.php

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -391,15 +391,13 @@ public function getOptions()
391391
private function configure(array $config)
392392
{
393393
$special = ['cache_expire' => 1, 'cache_limiter' => 1, 'save_path' => 1, 'name' => 1];
394+
$cookie = $origCookie = session_get_cookie_params();
394395

395396
foreach ($config as $key => $value) {
396397
if ($value === null || ini_get("session.$key") == $value) { // intentionally ==
397398
continue;
398399

399400
} elseif (strncmp($key, 'cookie_', 7) === 0) {
400-
if (!isset($cookie)) {
401-
$cookie = session_get_cookie_params();
402-
}
403401
$cookie[substr($key, 7)] = $value;
404402

405403
} else {
@@ -419,7 +417,7 @@ private function configure(array $config)
419417
}
420418
}
421419

422-
if (isset($cookie)) {
420+
if ($cookie !== $origCookie) {
423421
session_set_cookie_params(
424422
$cookie['lifetime'], $cookie['path'], $cookie['domain'],
425423
$cookie['secure'], $cookie['httponly']

0 commit comments

Comments
 (0)