pptviewlib does not accept unicode filename
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
OpenLP | Status tracked in Trunk | |||||
2.0 |
Fix Released
|
Medium
|
Phill | |||
Trunk |
Fix Released
|
Medium
|
Phill |
Bug Description
If PowerPoint Viewer is being used by presentation plugin, loading a presentation file whose filename/path contains unicode (non-ASCII) characters causes a traceback:
--- Exception Traceback ---
Traceback (most recent call last):
File "D:\OpenLP_
File "D:\OpenLP_
File "D:\OpenLP_
File "D:\OpenLP_
UnicodeEncodeError: 'ascii' codec can't encode characters in position 60-61: ordinal not in range(128)
Line 128 in load_presentation in pptviewcontroller uses str() on the filepath. This is due to a limitation of the C/C++ pptviewlib. It's OpenPPT function takes a *filename argument of type char. Thus it is unable to deal with unicode strings.
see http://
[WinXP SP3, OpenLP 1.9.9]
Related branches
- Jonathan Corwin (community): Approve
- Raoul Snyman: Approve
- Phill: Pending requested
-
Diff: 724 lines (+146/-139)5 files modifiedopenlp/plugins/presentations/lib/pptviewcontroller.py (+9/-3)
openlp/plugins/presentations/lib/pptviewlib/ppttest.py (+4/-3)
openlp/plugins/presentations/lib/pptviewlib/pptviewlib.cpp (+122/-122)
openlp/plugins/presentations/lib/pptviewlib/pptviewlib.h (+9/-9)
openlp/plugins/presentations/lib/pptviewlib/pptviewlib.vcproj (+2/-2)
- Raoul Snyman: Approve
- Jonathan Corwin: Pending requested
- Andreas Preikschat: Pending requested
- Phill: Pending requested
-
Diff: 1156 lines (+455/-199)12 files modified.bzrignore (+1/-0)
openlp/core/__init__.py (+1/-1)
openlp/core/lib/__init__.py (+2/-2)
openlp/core/lib/mediamanageritem.py (+1/-1)
openlp/plugins/presentations/lib/mediaitem.py (+2/-2)
openlp/plugins/presentations/lib/pptviewcontroller.py (+10/-5)
openlp/plugins/presentations/lib/pptviewlib/pptviewlib.cpp (+123/-123)
openlp/plugins/presentations/lib/pptviewlib/pptviewlib.h (+9/-9)
openlp/plugins/presentations/lib/pptviewlib/pptviewlib.vcproj (+2/-2)
openlp/plugins/presentations/lib/presentationcontroller.py (+7/-1)
tests/functional/openlp_plugins/presentations/test_pptviewcontroller.py (+143/-0)
tests/functional/openlp_plugins/presentations/test_presentationcontroller.py (+154/-53)
tags: | added: pptviewlib |
Changed in openlp: | |
importance: | Undecided → Low |
Changed in openlp: | |
status: | New → Incomplete |
tags: | added: presentations |
Samuel, did you reproduce this? I tried with a non-ascii character filename but it worked fine. However I'm on Windows 7, not XP.