-
Bug
-
Resolution: Fixed
-
Major
-
2.4.2
-
MOODLE_24_STABLE
-
MOODLE_24_STABLE
-
MDL-38456-mdeploy-paths -
I was testing the available update system and went to install a plugin through the new interface. After confirming that I did want to install the new plugin, I was presented with an error...
Oops! It did it again
|
|
Moodle deployment utility had a trouble with your request. See the docs page and the debugging information for more details.
|
|
exception 'unauthorized_access_exception' with message 'Unable to read the passphrase file.' in D:\xampp\htdocs\24_integration\mdeploy.php:836
|
Stack trace:
|
#0 D:\xampp\htdocs\24_integration\mdeploy.php(705): worker->authorize()
|
#1 D:\xampp\htdocs\24_integration\mdeploy.php(1390): worker->execute()
|
#2 {main}
|
Looking into the value of the passphase file path I discovered that the system is filtering characters from the path including colons (, which means that paths under Windows are being broken. By allowing colons in paths, I was able to download and install a plugin without any trouble. The change I made was to...
/mdeploy, line 268 |
$raw = preg_replace('~[[:cntrl:]]|[&<>"`\|\':]~u', '', $raw);
|
...from which I remove the colon from the regex, so it wouldn't be removed.
/mdeploy, line 268, altered |
$raw = preg_replace('~[[:cntrl:]]|[&<>"`\|\']~u', '', $raw);
|