summaryrefslogtreecommitdiff
path: root/jurt
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2016-02-23 17:51:13 +0100
committerStephan Bergmann <sbergman@redhat.com>2016-02-24 11:33:50 +0100
commit3e945cbd9b23a98d22065f1593295a7afa410c9e (patch)
tree24dd1324b753ee20f0d8e65b6b1de39baefff033 /jurt
parent74a18f64eebc8f6f66d64e439e152c6cdf9d76db (diff)
Be specific about illegal input
Change-Id: Ib840f5516e503ce92078150933217149fd322bde
Diffstat (limited to 'jurt')
-rw-r--r--jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java b/jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java
index 93a56b460b21..a2681b09dc8a 100644
--- a/jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java
+++ b/jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java
@@ -117,6 +117,10 @@ final class Unmarshal {
"Reading TYPE with bad type class " + (b & 0x7F));
}
if (TypeDescription.isTypeClassSimple(typeClass)) {
+ if ((b & 0x80) != 0) {
+ throw new RuntimeException(
+ "Reading TYPE with bad type class/cache flag " + b);
+ }
return TypeDescription.getTypeDescription(typeClass);
} else {
int index = read16Bit();