Bug when assigning a 1D column slice to a 1D row ROI of another dataObject

Issue #45 resolved
M. Gronle created an issue

The following code will cause a wrong result and may also lead to a crash:

a = dataObject.zeros([10,2],'uint8')
b = dataObject.randN([2,10],'uint8')
c = b[0,:] #get first row of b
a[:,0] = c #assign first row of b to first col of a (this is implicitely allowed)
a.data() #wrong, not the first col of a is filled with values but the first 5x2 block!

Hint: The assignment starts in the function PyDataObj_mappingSetElem and then calls ito::DataObject::deepCopyPartial, the error is located there ;)

Comments (3)

  1. Log in to comment