summaryrefslogtreecommitdiffstats
path: root/core/js
diff options
context:
space:
mode:
authorDaniel Calviño Sánchez <danxuliu@gmail.com>2018-10-11 10:53:25 +0200
committerDaniel Calviño Sánchez <danxuliu@gmail.com>2018-10-11 10:53:25 +0200
commitc2916b62d3faf36200dc7c6c314449287f47e32c (patch)
tree472a6a8a28feedeaf48748f16dd56e2443625988 /core/js
parent9277d242b0d528b93f5725d66eba24e2517dbb18 (diff)
downloadnextcloud-server-c2916b62d3faf36200dc7c6c314449287f47e32c.tar.gz
nextcloud-server-c2916b62d3faf36200dc7c6c314449287f47e32c.zip
Ignore "session_lifetime" if it can not be converted to a number
When "session_lifetime" can not be converted to a number the interval becomes a NaN due to dividing it by 2. This NaN was "dragged" over all the other mathematical operations and caused the csrftoken to be got again and again due to an infinite loop with no pauses in "setInterval". Now, the interval is set to the default value instead if the "session_lifetime" can not be converted to a number. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Diffstat (limited to 'core/js')
-rw-r--r--core/js/js.js4
1 files changed, 3 insertions, 1 deletions
diff --git a/core/js/js.js b/core/js/js.js
index e7e1c301bb5..d78b0159cfa 100644
--- a/core/js/js.js
+++ b/core/js/js.js
@@ -1383,10 +1383,12 @@ function initCore() {
*/
function initSessionHeartBeat() {
// interval in seconds
- var interval = 900;
+ var interval = NaN;
if (oc_config.session_lifetime) {
interval = Math.floor(oc_config.session_lifetime / 2);
}
+ interval = isNaN(interval)? 900: interval;
+
// minimum one minute
interval = Math.max(60, interval);
// max interval in seconds set to 24 hours