This is an automated email from the ASF dual-hosted git repository.

kusal pushed a commit to branch WW-5341-classloaders
in repository https://gitbox.apache.org/repos/asf/struts.git

commit d6fcfd9c275c289f8ee5bcfb53f93b6980f2c19c
Author: Kusal Kithul-Godage <g...@kusal.io>
AuthorDate: Mon Aug 28 22:19:06 2023 +1000

    WW-5341 Clean up SecurityMemberAccess#restore
---
 .../xwork2/ognl/SecurityMemberAccess.java             | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git 
a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java 
b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java
index fada135c2..48d36a4fd 100644
--- a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java
+++ b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java
@@ -84,16 +84,17 @@ public class SecurityMemberAccess implements MemberAccess {
 
     @Override
     public void restore(Map context, Object target, Member member, String 
propertyName, Object state) {
-        if (state != null) {
-            final AccessibleObject accessible = (AccessibleObject) member;
-            final boolean stateBoolean = ((Boolean) state).booleanValue();  // 
Using twice (avoid unboxing)
-            if (!stateBoolean) {
-                accessible.setAccessible(stateBoolean);
-            } else {
-                throw new IllegalArgumentException("Improper restore state [" 
+ stateBoolean + "] for target [" + target +
-                    "], member [" + member + "], propertyName [" + 
propertyName + "]");
-            }
+        if (state == null) {
+            return;
+        }
+        if ((Boolean) state) {
+            throw new IllegalArgumentException(format(
+                    "Improper restore state [true] for target [{0}], member 
[{1}], propertyName [{2}]",
+                    target,
+                    member,
+                    propertyName));
         }
+        ((AccessibleObject) member).setAccessible(false);
     }
 
     @Override

Reply via email to