Commit 0d250c8c authored by mevenson@1c010e3e-69d0-11dd-93a8-456734b0d56f's avatar mevenson@1c010e3e-69d0-11dd-93a8-456734b0d56f
Browse files

jss: Suppress Java language access checking for GET-JAVA-FIELD and the autoimports strategy.

On #abcl, <ferada> notes "if it's correct that T is passed to java
methods not as native 'true', then i think jss:get-java-field needs a
fix like <>."

Lisp 'T' should be a synonym for Java 'true' in method calls.  I think
it worked as such once, and should again

In the longer term, all the accesibility stategy Java language checks
should happen in the JAVA package with the possibility setting a
per-thread special variable that enforces the JVM policy.
parent d47c4688
......@@ -327,7 +327,7 @@ If OBJECT is a symbol it names a dot qualified static FIELD."
(find field (#"getDeclaredFields" class)
:key 'jfield-name :test 'equal))))
(#"setAccessible" jfield t)
(#"setAccessible" jfield +true+)
(values (#"get" jfield object) jfield))
(if (symbolp object)
(let ((class (find-java-class object)))
......@@ -350,7 +350,7 @@ associated is used to look up the static FIELD."
(jfield (if (java-object-p field)
(find field (#"getDeclaredFields" class) :key 'jfield-name :test 'equal))))
(#"setAccessible" jfield t)
(#"setAccessible" jfield +true+)
(values (#"set" jfield object value) jfield))
(if (symbolp object)
(let ((class (find-java-class object)))
......@@ -461,7 +461,7 @@ current classpath."
(let ((classes-field
(find "classes" (#"getDeclaredFields" (jclass "java.lang.ClassLoader"))
:key #"getName" :test 'equal)))
(#"setAccessible" classes-field t)
(#"setAccessible" classes-field +true+)
(loop for classloader in (mapcar #'first (dump-classpath))
(loop with classesv = (#"get" classes-field classloader)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment