JUCE
JUCE copied to clipboard
[Bug]: (JUCE 8) Memory Leak At lowLevelShape Function On Windows Standalone Application Built With MSVC
Detailed steps on how to reproduce the bug
I was using juce::Graphics::drawFittedText then it caused a memory leak.
What is the expected behaviour?
Detected memory leaks!
Dumping objects ->
{12214} normal block at 0x0000013CC2B233B0, 2 bytes long.
Data:
Operating systems
Windows
What versions of the operating systems?
10.0.22631.3737
Architectures
64-bit
Stacktrace
ucrtbased.dll!00007ffe79d4d2bf() 未知
ucrtbased.dll!00007ffe79d4d20d() 未知
ucrtbased.dll!00007ffe79d5016c() 未知
ucrtbased.dll!00007ffe79d4be8e() 未知
juce-full.dll!hb_object_create<hb_unicode_funcs_t>() 行 240 C++
juce-full.dll!hb_unicode_funcs_create(hb_unicode_funcs_t * parent) 行 186 C++
juce-full.dll!hb_ucd_unicode_funcs_lazy_loader_t::create() 行 228 C++
juce-full.dll!hb_data_wrapper_t<void,0>::call_create<hb_unicode_funcs_t,hb_ucd_unicode_funcs_lazy_loader_t>() 行 166 C++
juce-full.dll!hb_lazy_loader_t<hb_unicode_funcs_t,hb_ucd_unicode_funcs_lazy_loader_t,void,0,hb_unicode_funcs_t>::get_stored() 行 221 C++
juce-full.dll!hb_lazy_loader_t<hb_unicode_funcs_t,hb_ucd_unicode_funcs_lazy_loader_t,void,0,hb_unicode_funcs_t>::get_unconst() 行 247 C++
juce-full.dll!hb_ucd_get_unicode_funcs() 行 258 C++
juce-full.dll!hb_unicode_funcs_get_default() 行 164 C++
juce-full.dll!hb_buffer_t::reset() 行 280 C++
juce-full.dll!hb_buffer_create() 行 748 C++
juce-full.dll!juce::lowLevelShape(const juce::String & string, juce::Range<__int64> range, const juce::Font & font, juce::TextScript script, const juce::String & language, juce::TextDirection direction) 行 341 C++
juce-full.dll!juce::ConsumableGlyphs::reshape() 行 739 C++
juce-full.dll!juce::ConsumableGlyphs::ConsumableGlyphs(const juce::String & stringIn, juce::Range<__int64> rangeIn, juce::ShapingParams params) 行 624 C++
juce-full.dll!juce::SimpleShapedText::shape::__l2::<lambda_3>::operator()(juce::Range<__int64> range, const juce::ShapingParams & shapingParams) 行 984 C++
juce-full.dll!juce::SimpleShapedText::shape(const juce::String & data, const juce::ShapedTextOptions & options) 行 1139 C++
juce-full.dll!juce::SimpleShapedText::SimpleShapedText(const juce::String * data, const juce::ShapedTextOptions & options) 行 288 C++
juce-full.dll!juce::ShapedText::Impl::Impl(juce::String textIn, juce::ShapedTextOptions optionsIn) 行 110 C++
[外部代码]
juce-full.dll!juce::ShapedText::ShapedText(juce::String text, juce::ShapedTextOptions options) 行 162 C++
juce-full.dll!juce::GlyphArrangement::addFittedText(const juce::Font & f, const juce::String & text, float x, float y, float width, float height, juce::Justification layout, int maximumLines, float minimumHorizontalScale) 行 251 C++
juce-full.dll!juce::Graphics::drawFittedText::__l2::<lambda_1>::operator()(const juce::Graphics::drawFittedText::__l2::ArrangementArgs & args) 行 478 C++
juce-full.dll!juce::LruCache<`juce::Graphics::drawFittedText'::`2'::ArrangementArgs,juce::`anonymous namespace'::ConfiguredArrangement,128>::get<`juce::Graphics::drawFittedText'::`2'::<lambda_1>>(juce::Graphics::drawFittedText::__l2::ArrangementArgs key, juce::Graphics::drawFittedText::__l2::<lambda_1> && fn) 行 61 C++
juce-full.dll!juce::`anonymous namespace'::GlyphArrangementCache<`juce::Graphics::drawFittedText'::`2'::ArrangementArgs>::get<`juce::Graphics::drawFittedText'::`2'::<lambda_1>>(juce::Graphics::drawFittedText::__l2::ArrangementArgs && args, juce::Graphics::drawFittedText::__l2::<lambda_1> && configureArrangement) 行 84 C++
juce-full.dll!juce::Graphics::drawFittedText(const juce::String & text, juce::Rectangle<int> area, juce::Justification justification, int maximumNumberOfLines, float minimumHorizontalScale) 行 487 C++
> VocalShaper.exe!Splash::paint(juce::Graphics & g) 行 170 C++
juce-full.dll!juce::Component::paintComponentAndChildren(juce::Graphics & g) 行 1640 C++
juce-full.dll!juce::Component::paintEntireComponent(juce::Graphics & g, bool ignoreAlphaLevel) 行 1765 C++
juce-full.dll!juce::ComponentPeer::handlePaint(juce::LowLevelGraphicsContext & contextToPaintTo) 行 144 C++
juce-full.dll!juce::D2DContext::handleDirect2DPaint() 行 4792 C++
juce-full.dll!juce::D2DContext::handleShowWindow() 行 4766 C++
juce-full.dll!juce::HWNDComponentPeer::peerWindowProc(HWND__ * h, unsigned int message, unsigned __int64 wParam, __int64 lParam) 行 3830 C++
juce-full.dll!juce::HWNDComponentPeer::windowProc(HWND__ * h, unsigned int message, unsigned __int64 wParam, __int64 lParam) 行 3550 C++
[外部代码]
juce-full.dll!juce::HWNDComponentPeer::setVisible(bool shouldBeVisible) 行 1561 C++
juce-full.dll!juce::Component::setVisible(bool shouldBeVisible) 行 275 C++
VocalShaper.exe!MainApplication::initialise(const juce::String & commandLineParameters) 行 524 C++
juce-full.dll!juce::JUCEApplicationBase::initialiseApp() 行 312 C++
juce-full.dll!juce::JUCEApplication::initialiseApp() 行 97 C++
juce-full.dll!juce::JUCEApplicationBase::main() 行 271 C++
VocalShaper.exe!WinMain(HINSTANCE__ * __formal, HINSTANCE__ * __formal, char * __formal, int __formal) 行 656 C++
[外部代码]
Plug-in formats (if applicable)
Standalone
Plug-in host applications (DAWs) (if applicable)
No response
Testing on the develop branch
The bug is present on the develop branch
Code of Conduct
- [X] I agree to follow the Code of Conduct
We released a change on the develop branch which is likely to have fixed this issue
https://github.com/juce-framework/JUCE/commit/203934d949306e8c0b94f27a327012b5881238a5
Are you experiencing problems past this commit?
Fixed! Good job!