OpenCV static library does not delete TLS storage (Bugfix #2499)
Description
The possible solution is to create a small dll for windows static build that exports TLS keys and calls cv::deleteThreadAllocData()
and cv::deleteThreadRNGData()
in DllMain()
.
Associated revisions
Merge pull request #2499 from mlyashko:back_proj_fix1
History
Updated by Andrey Kamaev over 12 years ago
I confirm the issue. Static build makes impossible to clear thread-private data. As a side effect this results in memory leak in python/java wrappers (official python packages from sourceforge are also affected).
However the suggested solution doesn't look acceptable.
- Assignee set to Vadim Pisarevsky
- Category set to core
Updated by Sergey Popov over 12 years ago
Hello,
I created the patch that fixes the problem without an additional dll. The issue #2538 is also fixed in the patch. I hope it will be useful.
- File OpenCV_TLS_Patch.zip added
Updated by Anna Kogan over 12 years ago
Hello Sergey,
Thank you for the patch! Could you please make a pull request for it: http://opencv.org/opencv-pull-requests-test-results.html ? It would be very appreciated!
Updated by Kirill Kornyakov almost 12 years ago
Sergey, did you have a chance to work on a pull request?
- Affected version set to branch '2.4'
- Target version set to Next Hackathon
- Tracker changed from Bug to Bugfix
- Description changed from The possible solution is to create a small dll for windows static build that ... to The possible solution is to create a small dll for windows static build that ... More
Updated by Alexander Smorkalov over 11 years ago
- Assignee changed from Vadim Pisarevsky to Alexander Smorkalov
Updated by Alexander Smorkalov over 11 years ago
- Pull request set to https://github.com/Itseez/opencv/pull/1006