From c95b89ebc14620b9ffa927b7fb15698c5bbba70d Mon Sep 17 00:00:00 2001 From: Tom Jaspers Date: Mon, 30 Mar 2015 19:56:22 +0200 Subject: [PATCH] Thumbnails: add None check on lib_name `find_library` could return None, which would not cause an OSError from `loadLibrary`, making the plugin (falsely) think the library is available Also fixed wrong method call to skip test in that case See #1277 --- beetsplug/thumbnails.py | 2 ++ test/test_thumbnails.py | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/beetsplug/thumbnails.py b/beetsplug/thumbnails.py index 22f37551b..28d5ece0a 100644 --- a/beetsplug/thumbnails.py +++ b/beetsplug/thumbnails.py @@ -241,6 +241,8 @@ class GioURI(URIGetter): def get_library(self): lib_name = ctypes.util.find_library("gio-2") try: + if not lib_name: + return False return ctypes.cdll.LoadLibrary(lib_name) except OSError: return False diff --git a/test/test_thumbnails.py b/test/test_thumbnails.py index b2c16f0e8..4cb597645 100644 --- a/test/test_thumbnails.py +++ b/test/test_thumbnails.py @@ -265,7 +265,7 @@ class ThumbnailsTest(unittest.TestCase, TestHelper): gio = GioURI() plib = PathlibURI() if not gio.available: - self.skip("GIO library not found") + self.skipTest("GIO library not found") self.assertEqual(gio.uri("/foo"), b"file:///") # silent fail self.assertEqual(gio.uri(b"/foo"), b"file:///foo")