sigplot icon indicating copy to clipboard operation
sigplot copied to clipboard

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

Open desean1625 opened this issue 5 years ago • 2 comments

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;
        }

desean1625 avatar Nov 25 '19 17:11 desean1625