diff --git a/beets/dbcore/query.py b/beets/dbcore/query.py index 32062a1e9..74f6cb903 100644 --- a/beets/dbcore/query.py +++ b/beets/dbcore/query.py @@ -151,7 +151,11 @@ class BytesQuery(MatchQuery): # Use a buffer representation of the pattern for SQLite # matching. This instructs SQLite to treat the blob as binary # rather than encoded Unicode. - if isinstance(self.pattern, bytes): + if isinstance(self.pattern, basestring): + # Implicitly coerce Unicode strings to their bytes + # equivalents. + if isinstance(self.pattern, unicode): + self.pattern = self.pattern.encode('utf8') self.buf_pattern = buffer(self.pattern) elif isinstance(self.pattern, buffer): self.buf_pattern = self.pattern