diff options
Diffstat (limited to 'apps/plugins/mpegplayer/mpeg_parser.c')
| -rw-r--r-- | apps/plugins/mpegplayer/mpeg_parser.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/apps/plugins/mpegplayer/mpeg_parser.c b/apps/plugins/mpegplayer/mpeg_parser.c index 167f07d..0259bc9 100644 --- a/apps/plugins/mpegplayer/mpeg_parser.c +++ b/apps/plugins/mpegplayer/mpeg_parser.c @@ -1032,7 +1032,28 @@ intptr_t parser_send_video_msg(long id, intptr_t data) break; } - retval = str_send_msg(&video_str, id, data); + switch (id) + { +#ifdef GRAY_CACHE_MAINT + /* This must be done internally here or refresh may be delayed far + * too long */ + case VIDEO_DISPLAY_SHOW: + case VIDEO_PRINT_FRAME: + case VIDEO_PRINT_THUMBNAIL: + stream_gray_pause(true); + + GRAY_INVALIDATE_ICACHE(); + + retval = str_send_msg(&video_str, id, data); + + GRAY_VIDEO_FLUSH_ICACHE(); + + stream_gray_pause(false); + break; +#endif + default: + retval = str_send_msg(&video_str, id, data); + } } return retval; |