Переглянути джерело

add yet another workaround for stuck login due to session cookies

Andrew Dolgov 11 роки тому
батько
коміт
60ed4c9ad5
2 змінених файлів з 9 додано та 3 видалено
  1. 2 3
      classes/handler/public.php
  2. 7 0
      include/sessions.php

+ 2 - 3
classes/handler/public.php

@@ -492,9 +492,6 @@ class Handler_Public extends Handler {
 	}
 
 	function login() {
-		@session_destroy();
-		@session_start();
-
 		$_SESSION["prefs_cache"] = array();
 
 		if (!SINGLE_USER_MODE) {
@@ -503,6 +500,8 @@ class Handler_Public extends Handler {
 			$password = $_POST["password"];
 			$remember_me = $_POST["remember_me"];
 
+			@session_start();
+
 			if (authenticate_user($this->link, $login, $password)) {
 				$_POST["password"] = "";
 

+ 7 - 0
include/sessions.php

@@ -107,6 +107,13 @@
 	if (!defined('TTRSS_SESSION_NAME') || TTRSS_SESSION_NAME != 'ttrss_api_sid') {
 		if ($_COOKIE[$session_name]) {
 			@session_start();
+
+			if (!$_SESSION["uid"]) {
+				session_destroy();
+				if (isset($_COOKIE[session_name()])) {
+				   setcookie(session_name(), '', time()-42000, '/');
+				}
+			}
 		}
 	}
 ?>