libbluray | branch: master | npzacs <[email protected]> | Thu Apr 21 12:57:47 
2011 +0300| [6d00d542328a0709f10b38630644a5dddff4ec15] | committer: npzacs

Fixed "bc" (binary compare) instruction

> http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=6d00d542328a0709f10b38630644a5dddff4ec15
---

 src/libbluray/hdmv/hdmv_vm.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/libbluray/hdmv/hdmv_vm.c b/src/libbluray/hdmv/hdmv_vm.c
index 4c5ad04..aebd507 100644
--- a/src/libbluray/hdmv/hdmv_vm.c
+++ b/src/libbluray/hdmv/hdmv_vm.c
@@ -794,7 +794,7 @@ static int _hdmv_step(HDMV_VM *p)
                 BD_DEBUG(DBG_HDMV|DBG_CRIT, "missing operand in BRANCH/JUMP 
opcode 0x%08x] ", *(uint32_t*)insn);
             }
             switch (insn->cmp_opt) {
-                case INSN_BC: p->pc += !(dst &  src); break;
+                case INSN_BC: p->pc += !!(dst & ~src); break;
                 case INSN_EQ: p->pc += !(dst == src); break;
                 case INSN_NE: p->pc += !(dst != src); break;
                 case INSN_GE: p->pc += !(dst >= src); break;

_______________________________________________
libbluray-devel mailing list
[email protected]
http://mailman.videolan.org/listinfo/libbluray-devel

Reply via email to