From 694502a96576afb22af4de21dfb85002e8ab44fc Mon Sep 17 00:00:00 2001 From: Boris Gjenero Date: Tue, 6 Dec 2011 00:58:01 +0000 Subject: [PATCH] Fix FS#12423 : Rockbox access to /.rockbox/fonts after usb_enable(true). This fixes entry into USB mode on the Archos Recorder V2 and possibly also other targets using a USB to IDE bridge chip. Fred Bauer found this removes the need for a workaround in glyph_cache_save(). I'm including his patch which removes the workaround. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31155 a1c6a512-1295-4272-9138-f99709370657 --- apps/gui/usb_screen.c | 4 ++-- firmware/font.c | 5 ----- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/apps/gui/usb_screen.c b/apps/gui/usb_screen.c index 32c0773ed6..31e0829eb7 100644 --- a/apps/gui/usb_screen.c +++ b/apps/gui/usb_screen.c @@ -251,8 +251,6 @@ void gui_usb_screen_run(bool early_usb) touchscreen_set_mode(TOUCHSCREEN_BUTTON); #endif - usb_acknowledge(SYS_USB_CONNECTED_ACK); - #ifdef USB_ENABLE_HID usb_hid = global_settings.usb_hid; usb_keypad_mode = global_settings.usb_keypad_mode; @@ -284,6 +282,8 @@ void gui_usb_screen_run(bool early_usb) #endif } + usb_acknowledge(SYS_USB_CONNECTED_ACK); + while (1) { usb_screens_draw(usb_screen_vps_ar); diff --git a/firmware/font.c b/firmware/font.c index 2b86d338db..64bbf50d76 100644 --- a/firmware/font.c +++ b/firmware/font.c @@ -815,11 +815,6 @@ static void glyph_cache_save(int font_id) struct font *pf = pf_from_handle(handle); if(pf && pf->fd >= 0) { - /* FIXME: This sleep should not be necessary but without it * - * unloading multiple fonts and saving glyphcache files * - * quickly in succession creates multiple glyphcache files * - * with the same name. */ - sleep(HZ/10); char filename[MAX_PATH]; font_path_to_glyph_path(font_filename(font_id), filename); fd = open(filename, O_WRONLY|O_CREAT|O_TRUNC, 0666);