diff --git a/lib/plugins/authplain/_test/escaping.test.php b/lib/plugins/authplain/_test/escaping.test.php index 5a5f67c8245786ff3a52e500cf55a966ceb2c4bd..cbfbbc58705377fd936fd551f985c4c2735eba47 100644 --- a/lib/plugins/authplain/_test/escaping.test.php +++ b/lib/plugins/authplain/_test/escaping.test.php @@ -97,7 +97,7 @@ class helper_plugin_authplain_escaping_test extends DokuWikiTest { $test_line = $userpass.$escaped.$other_user_data; $result = $this->auth->splitUserData($test_line); - $this->assertEquals($testname, $result[2]); + $this->assertEquals($escaped, $result[2]); } } diff --git a/lib/plugins/authplain/auth.php b/lib/plugins/authplain/auth.php index ec5d16e9dffbc703c63514c59ca5053c59380db9..3d303597cc0a022a41f2a4d6e2624f18d473af18 100644 --- a/lib/plugins/authplain/auth.php +++ b/lib/plugins/authplain/auth.php @@ -356,9 +356,12 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { $row = array(); $piece = ''; - for($i=0; $i<strlen($line); $i++){ + $len = strlen($line); + for($i=0; $i<$len; $i++){ if ($line[$i]=='\\'){ + $piece .= $line[$i]; $i++; + if ($i>=$len) break; } else if ($line[$i]==':'){ $row[] = $piece; $piece = '';