Bug 356218 - Won't play files with filenames that contain '#' (pound sign, hash)
Summary: Won't play files with filenames that contain '#' (pound sign, hash)
Status: RESOLVED FIXED
Alias: None
Product: Phonon
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: unspecified
Platform: Kubuntu Linux
: NOR minor
Target Milestone: ---
Assignee: Harald Sitter
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-12-03 01:38 UTC by mrhohenhiem
Modified: 2015-12-03 09:39 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 4.9.0


Attachments
Screenshot of the video not playing (14.32 KB, image/png)
2015-12-03 06:27 UTC, mrhohenhiem
Details

Note You need to log in before you can comment on or make changes to this bug.
Description mrhohenhiem 2015-12-03 01:38:08 UTC
If you try to play a file that contains a '#' in its filename, Dragon Player will open it up and show its filename in the status bar on the bottom, but it will not play the video: it just shows the idle-equalizer-waves-animation-thing.

Reproducible: Always

Steps to Reproduce:
1. Rename a video file (I've only tested with webm and mp4) to include a '#' (pound sign or hash).
2. Open it with Dragon Player.

Actual Results:  
The file opens and its filename is shown in the status bar on the bottom, but the video doesn't play: only the idle-equalizer-waves-animation-thing is displayed.

Expected Results:  
The video should have played when the file was opened.

Version: 15.08.2
(This wasn't an option in the version picker for some reason.)
Comment 1 mrhohenhiem 2015-12-03 06:27:38 UTC
Created attachment 95875 [details]
Screenshot of the video not playing
Comment 2 Harald Sitter 2015-12-03 09:30:39 UTC
Git commit 621ffb823d45a88a02602fb4ee4b769dfbc0c16a by Harald Sitter.
Committed on 03/12/2015 at 09:30.
Pushed by sitter into branch 'master'.

fix double encoding problem with MRLs

QUrl::from* can auto-encode characters such as #, toString will not
automatically decode again. This results in a double encoding since
MRL always encodes according to phonon-gstreamer's expectations.
To avoid this use toLocalFile() for local paths as this returns decoded
paths which we can then percent encode correctly.
FIXED-IN: 4.9.0
CHANGELOG: Fix playback of local files containing a hash (#) character

M  +2    -3    phonon/mrl.cpp

http://commits.kde.org/phonon/621ffb823d45a88a02602fb4ee4b769dfbc0c16a