Moritz Klammler
58687aa5e6
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`.
2014-07-06 06:58:13 +02:00
..
2014-07-15 11:02:51 +00:00
2014-07-08 19:07:58 +02:00
2014-07-08 16:47:11 +02:00
2014-07-06 06:58:13 +02:00
2014-06-23 11:15:42 +02:00
2013-11-05 10:31:59 +01:00
2014-03-04 17:24:00 +01:00
2014-06-19 14:55:14 +01:00
2014-04-18 21:14:40 +02:00
2014-03-14 16:48:29 +01:00
2012-07-13 14:42:47 -04:00
2014-06-06 11:02:20 +02:00
2013-11-13 16:47:02 +01:00
2013-11-08 14:07:11 +00:00
2014-03-12 13:48:09 +01:00
2013-11-07 14:07:27 +01:00
2013-01-15 22:03:54 +01:00
2013-07-31 15:30:50 +02:00
2014-01-07 20:23:35 +01:00
2013-02-07 19:06:14 +01:00
2013-06-24 13:45:33 +02:00
2014-07-01 16:58:11 +02:00
2014-07-01 16:58:11 +02:00
2014-04-25 14:05:54 +02:00
2014-01-24 12:50:29 +01:00
2014-07-01 16:58:11 +02:00
2013-06-18 17:44:25 +02:00
2014-07-01 16:58:11 +02:00
2014-02-12 14:03:39 +00:00
2012-07-13 14:42:47 -04:00
2012-07-13 14:42:47 -04:00
2013-07-17 13:21:35 +02:00
2014-07-08 16:47:11 +02:00
2014-07-08 16:47:11 +02:00
2014-06-19 14:55:14 +01:00
2013-10-17 14:30:09 +02:00
2014-07-01 16:58:11 +02:00
2014-06-06 11:02:20 +02:00
2014-04-14 21:57:49 +02:00
2014-07-21 13:43:48 +02:00
2014-07-01 16:58:11 +02:00
2012-07-13 14:42:47 -04:00
2013-07-17 13:21:35 +02:00
2014-07-01 16:58:11 +02:00
2014-07-17 13:34:26 +02:00
2014-07-20 14:03:22 +02:00
2013-11-07 16:38:14 +01:00
2014-07-01 16:58:11 +02:00
2013-11-07 12:03:12 +01:00
2014-01-07 20:23:35 +01:00
2014-01-29 11:43:05 -08:00
2014-03-13 18:04:19 +01:00
2012-07-13 14:42:47 -04:00
2013-07-17 13:21:35 +02:00
2012-07-13 14:42:47 -04:00
2013-04-12 15:26:55 +02:00
2014-07-01 16:58:11 +02:00
2013-11-05 10:31:59 +01:00
2012-07-13 14:42:47 -04:00
2014-02-13 15:44:01 +01:00
2013-02-07 19:06:14 +01:00
2013-08-01 16:26:57 +02:00
2014-02-24 13:12:10 +01:00
2014-07-17 13:34:26 +02:00
2014-07-09 03:32:32 +08:00
2013-02-07 19:06:14 +01:00
2014-07-01 16:58:11 +02:00
2014-07-08 16:47:11 +02:00