libbluray | branch: master | hpi1 <[email protected]> | Fri Nov 8 13:21:01 2013 +0200| [3ed0fb706cd8bfbd80c4481207106801947abe6b] | committer: hpi1
Set BD-J frame buffer dirty area before locking the buffer > http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=3ed0fb706cd8bfbd80c4481207106801947abe6b --- src/libbluray/bdj/native/org_videolan_Libbluray.c | 6 ++++++ src/libbluray/decoders/overlay.h | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/libbluray/bdj/native/org_videolan_Libbluray.c b/src/libbluray/bdj/native/org_videolan_Libbluray.c index e352ba3..a69f31c 100644 --- a/src/libbluray/bdj/native/org_videolan_Libbluray.c +++ b/src/libbluray/bdj/native/org_videolan_Libbluray.c @@ -415,6 +415,12 @@ JNIEXPORT void JNICALL Java_org_videolan_Libbluray_updateGraphicN(JNIEnv * env, jint y, *dst; jsize offset; + /* set dirty area before lock() */ + bdj->buf->dirty[BD_OVERLAY_IG].x0 = x0; + bdj->buf->dirty[BD_OVERLAY_IG].x1 = x1; + bdj->buf->dirty[BD_OVERLAY_IG].y0 = y0; + bdj->buf->dirty[BD_OVERLAY_IG].y1 = y1; + /* copy to application-allocated buffer */ if (bdj->buf->lock) { diff --git a/src/libbluray/decoders/overlay.h b/src/libbluray/decoders/overlay.h index aca16ce..757becd 100644 --- a/src/libbluray/decoders/overlay.h +++ b/src/libbluray/decoders/overlay.h @@ -188,7 +188,7 @@ typedef struct bd_argb_buffer_s { int height; /* dirty area of buffers - * - Updated by library. + * - Updated by library before lock() call. * - Reset after each BD_ARGB_OVERLAY_FLUSH. */ struct { _______________________________________________ libbluray-devel mailing list [email protected] https://mailman.videolan.org/listinfo/libbluray-devel
