libbluray | branch: master | hpi1 <[email protected]> | Wed Feb 9 17:59:07 2011 +0200| [96ff9fbe39138eea983cfc0347391733527e2f26] | committer: hpi1
gc_run(): reset is always valid operation > http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=96ff9fbe39138eea983cfc0347391733527e2f26 --- src/libbluray/decoders/graphics_controller.c | 16 ++++++++++++---- 1 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/libbluray/decoders/graphics_controller.c b/src/libbluray/decoders/graphics_controller.c index 5ec57ba..b95d567 100644 --- a/src/libbluray/decoders/graphics_controller.c +++ b/src/libbluray/decoders/graphics_controller.c @@ -756,6 +756,15 @@ int gc_run(GRAPHICS_CONTROLLER *gc, gc_ctrl_e ctrl, uint32_t param, GC_NAV_CMDS cmds->sound_id_ref = -1; } + /* always accept reset */ + switch (ctrl) { + case GC_CTRL_RESET: + _gc_reset(gc); + return 0; + default:; + } + + /* other operations require complete display set */ if (!gc || !gc->igs || !gc->igs->ics || !gc->igs->complete) { TRACE("gc_run(): no interactive composition\n"); return result; @@ -795,10 +804,6 @@ int gc_run(GRAPHICS_CONTROLLER *gc, gc_ctrl_e ctrl, uint32_t param, GC_NAV_CMDS _render_page(gc, 0xffff, cmds); break; - case GC_CTRL_RESET: - _gc_reset(gc); - break; - case GC_CTRL_IG_END: _update_selected_button(gc); _render_page(gc, 0xffff, cmds); @@ -815,6 +820,9 @@ int gc_run(GRAPHICS_CONTROLLER *gc, gc_ctrl_e ctrl, uint32_t param, GC_NAV_CMDS case GC_CTRL_MOUSE_MOVE: result = _mouse_move(gc, param >> 16, param & 0xffff, cmds); break; + case GC_CTRL_RESET: + /* already handled */ + break; } return result; _______________________________________________ libbluray-devel mailing list [email protected] http://mailman.videolan.org/listinfo/libbluray-devel
