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

[stable28] dav: fix wrong decoding of pluses in URLs #43236

Merged
merged 1 commit into from
Feb 3, 2024

Conversation

backportbot[bot]
Copy link

@backportbot backportbot bot commented Jan 31, 2024

Backport of PR #40594

@backportbot backportbot bot requested review from nfebe and skjnldsv January 31, 2024 15:53
@skjnldsv skjnldsv added the 3. to review Waiting for reviews label Jan 31, 2024
@skjnldsv skjnldsv requested review from a team, ArtificialOwl, icewind1991 and come-nc and removed request for a team January 31, 2024 16:00
@skjnldsv skjnldsv added this to the Nextcloud 28.0.3 milestone Jan 31, 2024
@skjnldsv skjnldsv added 4. to release Ready to be released and/or waiting for tests to finish and removed 3. to review Waiting for reviews labels Feb 1, 2024
PHP's urldecode function does not decode URLs according to RFC 3986, but
according to the HTML 4.01 query parameter
encoding. This results in pluses being wrongly decoded to spaces even
though they should not be decoded at all.

Use rawurldecode instead, which follows RFC 3986 properly.

This fixes an issue where files on DAV shares containing pluses were
incorrectly decoded to spaces.

Fixes: #15849
Signed-off-by: Lorenz Brun <lorenz@brun.one>
@susnux susnux merged commit 44c9651 into stable28 Feb 3, 2024
50 checks passed
@susnux susnux deleted the backport/40594/stable28 branch February 3, 2024 18:59
@skjnldsv skjnldsv mentioned this pull request Feb 14, 2024
8 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4. to release Ready to be released and/or waiting for tests to finish bug feature: dav
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants