Changeset 14599


Ignore:
Timestamp:
01/09/14 11:00:46 (9 years ago)
Author:
Mark Evenson
Message:

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 <http://paste.lisp.org/display/140832>."

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.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/contrib/jss/invoke.lisp

    r14438 r14599  
    328328                         (find field (#"getDeclaredFields" class)
    329329                               :key 'jfield-name :test 'equal))))
    330   (#"setAccessible" jfield t)
     330  (#"setAccessible" jfield +true+)
    331331  (values (#"get" jfield object) jfield))
    332332      (if (symbolp object)
     
    351351       field
    352352           (find field (#"getDeclaredFields" class) :key 'jfield-name :test 'equal))))
    353   (#"setAccessible" jfield t)
     353  (#"setAccessible" jfield +true+)
    354354  (values (#"set" jfield object value) jfield))
    355355    (if (symbolp object)
     
    462462   (find "classes" (#"getDeclaredFields" (jclass "java.lang.ClassLoader"))
    463463         :key #"getName" :test 'equal)))
    464     (#"setAccessible" classes-field t)
     464    (#"setAccessible" classes-field +true+)
    465465    (loop for classloader in (mapcar #'first (dump-classpath))
    466466   append
Note: See TracChangeset for help on using the changeset viewer.