summaryrefslogtreecommitdiff
path: root/firmware/drivers
diff options
context:
space:
mode:
authorFred Bauer <fred.w.bauer@gmail.com>2011-10-21 18:05:52 +0000
committerFred Bauer <fred.w.bauer@gmail.com>2011-10-21 18:05:52 +0000
commit04a015dde0f7edfe5ee913dc8cc6c1395dc9a419 (patch)
tree8824e321737f0734859679a205b7ab9a4119d322 /firmware/drivers
parentd228d4d13059eae67f01485ee3e29b50b643b38a (diff)
Provide font_lock(). Font_get_bits() or ..width() may have to read glyph cache misses from disk so provide a means to lock the buflib memory during the wait.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30814 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers')
-rw-r--r--firmware/drivers/lcd-bitmap-common.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/firmware/drivers/lcd-bitmap-common.c b/firmware/drivers/lcd-bitmap-common.c
index 8d95825858..fb49deb76b 100644
--- a/firmware/drivers/lcd-bitmap-common.c
+++ b/firmware/drivers/lcd-bitmap-common.c
@@ -101,6 +101,7 @@ void LCDFN(fill_viewport)(void)
static void LCDFN(putsxyofs)(int x, int y, int ofs, const unsigned char *str)
{
unsigned short *ucs;
+ font_lock(current_vp->font, true);
struct font* pf = font_get(current_vp->font);
int vp_flags = current_vp->flags;
int rtl_next_non_diac_width, last_non_diacritic_width;
@@ -233,6 +234,7 @@ static void LCDFN(putsxyofs)(int x, int y, int ofs, const unsigned char *str)
}
}
}
+ font_lock(current_vp->font, false);
}
/* put a string at a given pixel position */