libbluray | branch: master | hpi1 <[email protected]> | Thu Sep 14 18:28:53 2017 +0300| [c998e6bad9f939611438c401a18e587e1d22fc05] | committer: hpi1
RegisterAccess: log invalid register number > http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=c998e6bad9f939611438c401a18e587e1d22fc05 --- .../bdj/java/org/bluray/system/RegisterAccess.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/libbluray/bdj/java/org/bluray/system/RegisterAccess.java b/src/libbluray/bdj/java/org/bluray/system/RegisterAccess.java index fd659ba1..3737f51d 100644 --- a/src/libbluray/bdj/java/org/bluray/system/RegisterAccess.java +++ b/src/libbluray/bdj/java/org/bluray/system/RegisterAccess.java @@ -19,6 +19,7 @@ package org.bluray.system; import org.videolan.Libbluray; +import org.videolan.Logger; public class RegisterAccess { private RegisterAccess() { @@ -29,14 +30,28 @@ public class RegisterAccess { } public int getGPR(int num) { + if (num < 0 || num > 4095) { + logger.error("getGPR(" + num + "): invalid GPR"); + throw new IllegalArgumentException("GPR " + num + " is not supported."); + } + return Libbluray.readGPR(num); } public int getPSR(int num) { + if (num < 0 || num > 127) { + logger.error("getPSR(" + num + "): invalid PSR"); + throw new IllegalArgumentException("PSR " + num + " is not supported."); + } + return Libbluray.readPSR(num); } public void setGPR(int num, int value) { + if (num < 0 || num > 4095) { + logger.error("setGPR(" + num + ", " + value + "): invalid GPR"); + throw new IllegalArgumentException("GPR " + num + " is not supported."); + } Libbluray.writeGPR(num, value); } @@ -64,4 +79,6 @@ public class RegisterAccess { public static final int PSR_PLAYER_PROFILE = 31; private static final RegisterAccess instance = new RegisterAccess(); + + private static final Logger logger = Logger.getLogger(RegisterAccess.class.getName()); } _______________________________________________ libbluray-devel mailing list [email protected] https://mailman.videolan.org/listinfo/libbluray-devel
