Author: justin
Date: Tue Sep 10 14:12:03 2013
New Revision: 1521496
URL: http://svn.apache.org/r1521496
Log:
SLING-3052 - adding null check before adding object from bindings
Modified:
sling/trunk/bundles/scripting/javascript/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngine.java
Modified:
sling/trunk/bundles/scripting/javascript/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngine.java
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/scripting/javascript/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngine.java?rev=1521496&r1=1521495&r2=1521496&view=diff
==============================================================================
---
sling/trunk/bundles/scripting/javascript/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngine.java
(original)
+++
sling/trunk/bundles/scripting/javascript/src/main/java/org/apache/sling/scripting/javascript/internal/RhinoJavaScriptEngine.java
Tue Sep 10 14:12:03 2013
@@ -175,17 +175,19 @@ public class RhinoJavaScriptEngine exten
for (Object entryObject : bindings.entrySet()) {
Entry<?, ?> entry = (Entry<?, ?>) entryObject;
String name = (String) entry.getKey();
+ Object value = entry.getValue();
- // get the current property value, if set
- if (ScriptableObject.hasProperty(scope, name)) {
- replacedProperties.put(name, ScriptableObject.getProperty(
- scope, name));
- }
+ if (value != null) {
+ // get the current property value, if set
+ if (ScriptableObject.hasProperty(scope, name)) {
+ replacedProperties.put(name, ScriptableObject.getProperty(
+ scope, name));
+ }
- // wrap the new value and set it
- Object wrapped = ScriptRuntime.toObject(scope, entry.getValue());
- ScriptableObject.putProperty(scope, (String) entry.getKey(),
- wrapped);
+ // wrap the new value and set it
+ Object wrapped = ScriptRuntime.toObject(scope, value);
+ ScriptableObject.putProperty(scope, name, wrapped);
+ }
}
return replacedProperties;