Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Joomla updates will fail when spaces in temp path #35684

Closed
smohila opened this issue Sep 27, 2021 · 7 comments
Closed

Joomla updates will fail when spaces in temp path #35684

smohila opened this issue Sep 27, 2021 · 7 comments

Comments

@smohila
Copy link

smohila commented Sep 27, 2021

Steps to reproduce the issue

  • Set up a path with a space character in the $config->tmp_path variable (e.g. /Users/test/files/joomla projects/mysite/tmp)
  • Start a joomla update in the joomla backend

Expected result

The joomla update process should run through as normal (update from 3.9.27 to 3.10.2).

Actual result

Update could not be installed. Got an error The checksum verification failed. Please make sure you are using the correct update server!.

Reason for this error

In file libraries/vendor/joomla/filter/src/InputFilter.php in method cleanPath (line 1017) a regexp for checking the path for Linux or Windows file systems fails. For Linux systems the patters is defined as:

$linuxPattern = '/^[A-Za-z0-9_\/-]+[A-Za-z0-9_\.-]*([\\\\\/]+[A-Za-z0-9_-]+[A-Za-z0-9_\.-]*)*$/';

This pattern does not accept any spaces. Thus a tmp_path containing any spaces will fail.

Solution

The pattern should allow space, e.g.

$linuxPattern = '/^[A-Za-z0-9 _\/-]+[A-Za-z0-9 _\.-]*([\\\\\/]+[A-Za-z0-9 _-]+[A-Za-z0-9 _\.-]*)*$/';

Then the method cleanPath will return the correct path and the update process works as expected.

Additional comments

Tested/reproduced on Joomla! 3.9.27 trying to update to 3.10.2

@brianteeman
Copy link
Contributor

spaces in files and folder names under linux is never recommended afaik

@PhilETaylor

This comment was marked as abuse.

@smohila
Copy link
Author

smohila commented Sep 27, 2021

spaces in files and folder names under linux is never recommended afaik

You're basically right but on local systems (MacOS, Windows) it's not unusal that people have paths to there systems with spaces afaik.

@PhilETaylor

This comment was marked as abuse.

@smohila
Copy link
Author

smohila commented Sep 29, 2021

InputFilter is not a Joomla (CMS) class and so this should be addressed upstream in the framework repo if at all.

Thanks for your hint, I placed it here:
joomla/framework.joomla.org#77

@Hackwar
Copy link
Member

Hackwar commented Jan 30, 2023

@smohila the correct place for that issue report would have been here: https://github.com/joomla-framework/input/issues
I'll copy the one from you over.

@alikon
Copy link
Contributor

alikon commented Jan 20, 2025

see joomla-framework/input#41

@alikon alikon closed this as completed Jan 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants