libbluray | branch: master | hpi1 <[email protected]> | Sat Jun 25 14:22:30 2011 +0300| [5ea20a48c224c1d28a225f4d6c53ed973e2c15bf] | committer: hpi1
Check graphics_processor_decode_ts() return value: do not reset IG state unless display set was changed. (required for main path embedded IG streams) > http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=5ea20a48c224c1d28a225f4d6c53ed973e2c15bf --- src/libbluray/decoders/graphics_controller.c | 11 ++++++++--- 1 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/libbluray/decoders/graphics_controller.c b/src/libbluray/decoders/graphics_controller.c index c1dfdda..ed3001a 100644 --- a/src/libbluray/decoders/graphics_controller.c +++ b/src/libbluray/decoders/graphics_controller.c @@ -507,9 +507,14 @@ int gc_decode_ts(GRAPHICS_CONTROLLER *gc, uint16_t pid, uint8_t *block, unsigned bd_mutex_lock(&gc->mutex); - graphics_processor_decode_ts(gc->igp, &gc->igs, - pid, block, num_blocks, - stc); + if (!graphics_processor_decode_ts(gc->igp, &gc->igs, + pid, block, num_blocks, + stc)) { + /* no new complete display set */ + bd_mutex_unlock(&gc->mutex); + return 0; + } + if (!gc->igs || !gc->igs->complete) { bd_mutex_unlock(&gc->mutex); return 0; _______________________________________________ libbluray-devel mailing list [email protected] http://mailman.videolan.org/listinfo/libbluray-devel
