diff options
author | Steffen Stollfuß <j0inty@users.noreply.github.com> | 2015-11-08 20:05:31 +0100 |
---|---|---|
committer | Steffen Stollfuß <j0inty@users.noreply.github.com> | 2015-11-08 20:05:31 +0100 |
commit | 49c78f694eded442d95a25feb5bbc69e6bffb205 (patch) | |
tree | ae36e42478e17f3d016bb3bd3b86aba0e9f16ca3 /system/libraries | |
parent | 81a6f81d88a0cded9fa5617c4bc578311c5bb652 (diff) | |
parent | 6c4daef7ace73e1e9bacb511f646ade778763ff9 (diff) |
Merge pull request #1 from bcit-ci/develop
Pull current develop branch to submit a bug report later
Diffstat (limited to 'system/libraries')
-rw-r--r-- | system/libraries/Email.php | 13 | ||||
-rw-r--r-- | system/libraries/Session/drivers/Session_database_driver.php | 4 |
2 files changed, 12 insertions, 5 deletions
diff --git a/system/libraries/Email.php b/system/libraries/Email.php index acf3629c3..ebff7567a 100644 --- a/system/libraries/Email.php +++ b/system/libraries/Email.php @@ -1563,11 +1563,10 @@ class CI_Email { if ($this->charset === 'UTF-8') { - if (MB_ENABLED === TRUE) - { - return mb_encode_mimeheader($str, $this->charset, 'Q', $this->crlf); - } - elseif (ICONV_ENABLED === TRUE) + // Note: We used to have mb_encode_mimeheader() as the first choice + // here, but it turned out to be buggy and unreliable. DO NOT + // re-add it! -- Narf + if (ICONV_ENABLED === TRUE) { $output = @iconv_mime_encode('', $str, array( @@ -1590,6 +1589,10 @@ class CI_Email { $chars = iconv_strlen($str, 'UTF-8'); } + elseif (MB_ENABLED === TRUE) + { + $chars = mb_strlen($str, 'UTF-8'); + } } // We might already have this set for UTF-8 diff --git a/system/libraries/Session/drivers/Session_database_driver.php b/system/libraries/Session/drivers/Session_database_driver.php index 1d01c2923..72b39d12d 100644 --- a/system/libraries/Session/drivers/Session_database_driver.php +++ b/system/libraries/Session/drivers/Session_database_driver.php @@ -159,6 +159,10 @@ class CI_Session_database_driver extends CI_Session_driver implements SessionHan if (($result = $this->_db->get()->row()) === NULL) { + // PHP7 will reuse the same SessionHandler object after + // ID regeneration, so we need to explicitly set this to + // FALSE instead of relying on the default ... + $this->_row_exists = FALSE; $this->_fingerprint = md5(''); return ''; } |