[Numpy-discussion] memory corruption bug
svetosch at gmx.net
Sat Aug 26 07:13:30 CDT 2006
I experienced this strange bug which caused a totally unrelated variable
to be overwritten (no exception or error was raised, so it took me while
to rule out any errors of my own).
The context where this is in is a method of a class (Vecm.getSW()), and
the instance of Vecm is created within a different class (GG.__init__).
Now, the affected variable is in the namespace of GG (it's GG.urate),
and so I would think that anything local in Vecm.getSW() should not
affect GG.urate, right?
Originally I did:
glx[lag:, :] -= temp
But that caused the described problem. Then I tried:
glx[lag:, :] = glx[lag:, :] - temp
But the same problem remains. Then I worked around the slice assignment
temp4 = r_[zeros([lag, n_y]), temp]
glx = glx - temp4
And everything is ok! However, when I alter the second line of this
glx -= temp4
The problem reappears! So I'm not even sure whether this is one or two
This is with yesterday's numpy svn on windows, but the same thing
happens with an earlier svn (~b2) as well. If you need further info,
please tell me how to provide it.
More information about the Numpy-discussion