Skip to content

m.initialize has a bug setting the subsize if the array input is array of data views #82

@desean1625

Description

@desean1625

Describe the bug
m.initialize has a bug setting the subsize if the array input is array of data views

To Reproduce

data = [new DataView(new ArrayBuffer(10))];
plot.overlay_array(data);//throw "subsize must be provided with type 2000 files";

Expected behavior
The code allows arrays of Dataviews to be set and attempts to get the length for the subsize using data[0].length. However, dataviews it should be data[0].byteLength

Additional context
Fix should be

else if (Array.isArray(data) && (Array.isArray(data[0]) || ArrayBuffer.isView(data[0]))) {
            //If this is a 2-D array automatically set subsize
            hcb.type = 2000;
            hcb.subsize = ArrayBuffer.isView(data[0]) ? data[0].byteLength: data[0].length;
            hcb.size = data.length;
        }

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions