diff --git a/src/gui/text/freetype/qfreetypefontdatabase.cpp b/src/gui/text/freetype/qfreetypefontdatabase.cpp index f7d592a761c..b5c925722f0 100644 --- a/src/gui/text/freetype/qfreetypefontdatabase.cpp +++ b/src/gui/text/freetype/qfreetypefontdatabase.cpp @@ -107,6 +107,10 @@ void QFreeTypeFontDatabase::addNamedInstancesForFace(void *face_, FT_MM_Var *var = nullptr; FT_Get_MM_Var(face, &var); if (var != nullptr) { + std::unique_ptr varGuard(var, [](FT_MM_Var *res) { + FT_Done_MM_Var(qt_getFreetype(), res); + }); + for (FT_UInt i = 0; i < var->num_namedstyles; ++i) { FT_UInt id = var->namedstyle[i].strid;