diff options
author | Moritz Klammler <moritz@klammler.eu> | 2014-07-06 06:58:13 +0200 |
---|---|---|
committer | Moritz Klammler <moritz@klammler.eu> | 2014-07-06 06:58:13 +0200 |
commit | 58687aa5e638d365d5e41c1e6c66cbfc44fce85f (patch) | |
tree | af5ea0fa2a0de994a4d3522e94ff83852e30adb0 /test/array.cpp | |
parent | 339f14b8d1b73db0366afc3a497d566cecf72e1b (diff) |
Avoid memory leak when constructor of user-defined type throws exception.
The added check `ctorleak.cpp` demonstrates how the leak can be reproduced.
The test appears to pass but it is leaking the storage of the (not created)
matrix. I don't know how to make this test fail in the existing test suite but
you can run it through Valgrind (or another debugger) to verify the leak.
$ ./check.sh ctorleak && valgrind --leak-check=full ./test/ctorleak
This patch fixes this leak by adding some try-catch-delete-rethrow blocks to
`Eigen/src/Core/util/Memory.h`.
Diffstat (limited to 'test/array.cpp')
0 files changed, 0 insertions, 0 deletions