OpenLP picks up macOS hidden files when loading plugins
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenLP |
Fix Committed
|
Low
|
Phill |
Bug Description
macOS *loves* to litter the filesystem with hidden files which are somehow useful to it. Unfortunately this means that if a user moves OpenLP out of the Applications directory, macOS will create these silly ._* files, and then OpenLP chokes on them when trying to find its plugins.
To work around macOS's ridiculous behaviour, we simply need to make sure we exclude files starting with "._" when searching for plugins.
See the original bug report below:
Version: {'version': '2.4.6', 'full': '2.4.6', 'build': None}
--- Details of the Exception. ---
Hi,
I have a need to keep some applications on the USB sticlk, so I moved entire OpenLP folder from
/Volumes/Macintosh HD/Applications/
to
/Volumes/
The trick above works fine to other applications like Evenote, Gimp, Nozbe, Google Earth, etc... while OpenLP won't start after that. Even OpenSong starts propelry after move to USB stick.
Thank you in advance for the correction, I would appreciate for the patch or woraround as soon as possible.
Best regards
--- Exception Traceback ---
Traceback (most recent call last):
File "tokenize.py", line 392, in find_cookie
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb0 in position 37: invalid start byte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "openlp-run.py", line 44, in <module>
File "openlp/
File "openlp/
File "openlp/
File "openlp/
File "openlp/
File "imp.py", line 302, in find_module
File "tokenize.py", line 433, in detect_encoding
File "tokenize.py", line 397, in find_cookie
File "<string>", line None
SyntaxError: invalid or missing encoding declaration for '/Volumes/
--- System information ---
Platforma: Darwin-
--- Library Versions ---
Python: 3.4.6
Qt5: 5.6.2
PyQt5: 5.7.1
QtWebkit: 538.1
SQLAlchemy: 1.1.5
SQLAlchemy Migrate: -
BeautifulSoup: 4.4.1
lxml: 3.6.0
Chardet: 2.3.0
PyEnchant: 1.6.6
Mako: 1.0.6
pyICU: -
pyUNO bridge: -
VLC: -
Related branches
- Tim Bentley: Approve
- Raoul Snyman: Approve
-
Diff: 151 lines (+63/-5)7 files modifiedopenlp/core/common/__init__.py (+1/-0)
openlp/core/lib/pluginmanager.py (+1/-1)
openlp/core/ui/media/mediacontroller.py (+2/-1)
openlp/core/ui/servicemanager.py (+1/-1)
openlp/plugins/bibles/forms/bibleimportform.py (+1/-0)
openlp/plugins/presentations/presentationplugin.py (+2/-1)
tests/functional/openlp_plugins/presentations/test_impresscontroller.py (+55/-1)
Changed in openlp: | |
assignee: | nobody → Phill (phill-ridout) |
status: | New → In Progress |
Changed in openlp: | |
milestone: | none → 2.9.1 |
status: | In Progress → Fix Committed |