[SYSTEMML-2399] Fix robustness list slice on temporary paramserv lists

This patch fixes the robustness of list slice operations on temorary
paramserv lists, which so far resulted in null pointer exceptions due to
missing pinned states of inputs.


Project: http://git-wip-us.apache.org/repos/asf/systemml/repo
Commit: http://git-wip-us.apache.org/repos/asf/systemml/commit/7b29464b
Tree: http://git-wip-us.apache.org/repos/asf/systemml/tree/7b29464b
Diff: http://git-wip-us.apache.org/repos/asf/systemml/diff/7b29464b

Branch: refs/heads/master
Commit: 7b29464becbc0088a0d1834a7c7c2820a3a12242
Parents: fcf7307
Author: Matthias Boehm <[email protected]>
Authored: Fri Jun 15 17:44:43 2018 -0700
Committer: Matthias Boehm <[email protected]>
Committed: Fri Jun 15 18:58:43 2018 -0700

----------------------------------------------------------------------
 .../java/org/apache/sysml/runtime/instructions/cp/ListObject.java | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/systemml/blob/7b29464b/src/main/java/org/apache/sysml/runtime/instructions/cp/ListObject.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/sysml/runtime/instructions/cp/ListObject.java 
b/src/main/java/org/apache/sysml/runtime/instructions/cp/ListObject.java
index 4c06396..039f1ed 100644
--- a/src/main/java/org/apache/sysml/runtime/instructions/cp/ListObject.java
+++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/ListObject.java
@@ -65,7 +65,8 @@ public class ListObject extends Data {
        public ListObject slice(int ix1, int ix2) {
                ListObject ret = new ListObject(_data.subList(ix1, ix2 + 1),
                        (_names != null) ? _names.subList(ix1, ix2 + 1) : null);
-               ret.setStatus(Arrays.copyOfRange(_dataState, ix2, ix2 + 1));
+               if( _dataState != null )
+                       ret.setStatus(Arrays.copyOfRange(_dataState, ix2, ix2 + 
1));
                return ret;
        }
        

Reply via email to