Merge topic 'web-session-regression'
* changes: Patch guice servlet extension to fix cookies bug WebSession: Prevent NPE in GitSmartHttpTools.isGitClient() WebSessionCache: Make response parameter optional
This commit is contained in:
@@ -68,7 +68,8 @@ public abstract class CacheBasedWebSession implements WebSession {
|
||||
this.anonymousProvider = anonymousProvider;
|
||||
this.identified = identified;
|
||||
|
||||
if (!GitSmartHttpTools.isGitClient(request)) {
|
||||
if (request.getRequestURI() == null
|
||||
|| !GitSmartHttpTools.isGitClient(request)) {
|
||||
String cookie = readCookie();
|
||||
if (cookie != null) {
|
||||
key = new Key(cookie);
|
||||
@@ -184,6 +185,10 @@ public abstract class CacheBasedWebSession implements WebSession {
|
||||
}
|
||||
|
||||
private void saveCookie() {
|
||||
if (response == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
final String token;
|
||||
final int ageSeconds;
|
||||
|
||||
|
@@ -17,6 +17,7 @@ package com.google.gerrit.httpd;
|
||||
import static java.util.concurrent.TimeUnit.MINUTES;
|
||||
|
||||
import com.google.common.cache.Cache;
|
||||
import com.google.gerrit.common.Nullable;
|
||||
import com.google.gerrit.extensions.registration.DynamicItem;
|
||||
import com.google.gerrit.httpd.WebSessionManager.Val;
|
||||
import com.google.gerrit.server.AnonymousUser;
|
||||
@@ -56,7 +57,7 @@ public class H2CacheBasedWebSession extends CacheBasedWebSession {
|
||||
@Inject
|
||||
H2CacheBasedWebSession(
|
||||
HttpServletRequest request,
|
||||
HttpServletResponse response,
|
||||
@Nullable HttpServletResponse response,
|
||||
WebSessionManagerFactory managerFactory,
|
||||
@Named(WebSessionManager.CACHE_NAME) Cache<String, Val> cache,
|
||||
AuthConfig authConfig,
|
||||
|
Reference in New Issue
Block a user