diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c20c2ab --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +__pycache__ + diff --git a/adafruit_bitmap_font/bdf.py b/adafruit_bitmap_font/bdf.py index d06eeb7..1bf69f3 100644 --- a/adafruit_bitmap_font/bdf.py +++ b/adafruit_bitmap_font/bdf.py @@ -85,7 +85,7 @@ def load_glyphs(self, code_points): code_point = int(code_point) if code_point == code_points or code_point in code_points: total_remaining -= 1 - if code_point not in self._glyphs: + if code_point not in self._glyphs or not self._glyphs[code_point]: desired_character = True current_info = {"bitmap": None, "bounds": None, "shift": None} elif line.startswith(b"DWIDTH"): diff --git a/adafruit_bitmap_font/glyph_cache.py b/adafruit_bitmap_font/glyph_cache.py index 835adb1..383596b 100644 --- a/adafruit_bitmap_font/glyph_cache.py +++ b/adafruit_bitmap_font/glyph_cache.py @@ -10,6 +10,7 @@ def get_glyph(self, code_point): s = set() s.add(code_point) + self._glyphs[code_point] = None self.load_glyphs(s) gc.collect() return self._glyphs[code_point]