Make use of the mbstring.func_overload helper functions in WP_Filesystem so byte lengths are properly determined. See #25259 Fixes #25237

git-svn-id: https://develop.svn.wordpress.org/trunk@25349 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Dion Hulse
2013-09-11 08:26:57 +00:00
parent 7ebad3db1c
commit ea6da7d5dc
3 changed files with 39 additions and 3 deletions
@@ -68,11 +68,17 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base {
if ( ! $fp )
return false;
mbstring_binary_safe_encoding();
$data_length = strlen( $contents );
$bytes_written = fwrite( $fp, $contents );
reset_mbstring_encoding();
fclose( $fp );
if ( false === $bytes_written || $bytes_written != strlen( $contents ) )
if ( $data_length !== $bytes_written )
return false;
$this->chmod( $file, $mode );