#1034 closed defect (fixed)
"addmedia" command doesn't handle UTF8 titles/descriptions
Reported by: | Matt Molyneaux | Owned by: | |
---|---|---|---|
Priority: | critical | Milestone: | |
Component: | programming | Keywords: | |
Cc: | Christopher Allan Webber, berkerpeksag | Parent Tickets: |
Description
When adding media via the commandline, UTF8 characters in either --title
or --description
cause a UnicodeDecodeError
:
(mediagoblin)[gmg@dichromate mediagoblin]$ gmg addmedia moggers87 doge.png --title "test ß" Traceback (most recent call last): File "/home/gmg/mediagoblin/bin/gmg", line 9, in <module> load_entry_point('mediagoblin==0.7.0', 'console_scripts', 'gmg')() File "/home/gmg/mediagoblin/mediagoblin/gmg_commands/__init__.py", line 124, in main_cli args.func(args) File "/home/gmg/mediagoblin/mediagoblin/gmg_commands/addmedia.py", line 95, in addmedia title=maybe_unicodeify(args.title), File "/home/gmg/mediagoblin/mediagoblin/gmg_commands/addmedia.py", line 88, in maybe_unicodeify return unicode(some_string) UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 5: ordinal not in range(128)
The cause of this error is in the maybe_unicodify
method here. Python 2 defaults to decoding strings to Unicode as ASCII - simply adding "utf8" as the second argument will solve this issue.
Change History (6)
comment:1 by , 10 years ago
Cc: | added |
---|
comment:2 by , 10 years ago
Status: | new → review |
---|
comment:4 by , 10 years ago
Resolution: | → fixed |
---|---|
Status: | review → closed |
I've tested this on Py2 and it works as advertised, I was unable to get it working on Py3 - master seems to be broken.
As such, I've pushed to master anyway.
comment:5 by , 10 years ago
Thanks! Is there an issue related to master breakage? I've tested this on Python 3 in my dev environment, by the way.
Thanks for the report! This was partly fixed in the Python 3 branch. Here is a more complete fix:
The branch name is "1034".
I think we should add tests for GMG commands :)