summaryrefslogtreecommitdiffstats
path: root/rs
diff options
context:
space:
mode:
authorStephen Hines <srhines@google.com>2014-06-23 17:35:04 -0700
committerStephen Hines <srhines@google.com>2014-06-23 17:35:04 -0700
commitfcb3161e57705ee294ce6733c1a488454f314f58 (patch)
tree350c4f4346a8db8dfb49c008c842aaed853e01ce /rs
parentd24f557798d04bdd50f2a45e48b70b009a205b4a (diff)
downloadframeworks_base-fcb3161e57705ee294ce6733c1a488454f314f58.zip
frameworks_base-fcb3161e57705ee294ce6733c1a488454f314f58.tar.gz
frameworks_base-fcb3161e57705ee294ce6733c1a488454f314f58.tar.bz2
We need to update mPos when we copy a FieldPacker via its data[] member.
Bug: 15756600 This change also adds a TODO/FIXME related to subAlign() and our tracking mechanism for it. We need to further investigate how to make subAlign() work properly if a user copies their FieldPacker. Change-Id: I861e529abd11e378f7c73b510d7f418b940fe480
Diffstat (limited to 'rs')
-rw-r--r--rs/java/android/renderscript/FieldPacker.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/rs/java/android/renderscript/FieldPacker.java b/rs/java/android/renderscript/FieldPacker.java
index dccc1ac..9048c31 100644
--- a/rs/java/android/renderscript/FieldPacker.java
+++ b/rs/java/android/renderscript/FieldPacker.java
@@ -37,10 +37,15 @@ public class FieldPacker {
}
public FieldPacker(byte[] data) {
- mPos = 0;
+ // Advance mPos to the end of the buffer, since we are copying in the
+ // full data input.
+ mPos = data.length;
mLen = data.length;
mData = data;
mAlignment = new BitSet();
+ // TODO: We should either have an actual FieldPacker copy constructor
+ // or drop support for computing alignment like this. As it stands,
+ // subAlign() can never work correctly for copied FieldPacker objects.
}
public void align(int v) {