Fixed update script
authorAlexander Ebert <ebert@woltlab.com>
Fri, 28 Feb 2014 17:29:46 +0000 (18:29 +0100)
committerAlexander Ebert <ebert@woltlab.com>
Fri, 28 Feb 2014 17:29:46 +0000 (18:29 +0100)
wcfsetup/install/files/acp/update_com.woltlab.wcf_2.0.3.php

index 937d7860325a14ef76bb8b27ff752b6a1ec8b9bf..144f9fd5ed98597af0668907a495db1b92119fc0 100644 (file)
@@ -9,12 +9,18 @@ use wcf\system\WCF;
  * @category   Community Framework
  */
 // enforce new limits for session timeout (prevents misconfiguration)
-$sql = "UPDATE wcf".WCF_N."_option
-       SET     optionValue =  MIN(MAX(optionValue, ?), ?)
+$sql = "SELECT optionID, optionValue
+       FROM    wcf".WCF_N."_option
        WHERE   optionName = ?";
 $statement = WCF::getDB()->prepareStatement($sql);
+$statement->execute(array('session_timeout'));
+$row = $statement->fetchArray();
+
+$sql = "UPDATE wcf".WCF_N."_option
+       SET     optionValue = ?
+       WHERE   optionID = ?";
+$statement = WCF::getDB()->prepareStatement($sql);
 $statement->execute(array(
-       600,
-       86400,
-       'session_timeout'
+       min(max(600, $row['optionValue']), 86400),
+       $row['optionID']
 ));