Я написал функцию drawCircle ниже, но, когда больше кругов нарисовано/перерисовано, использование памяти значительно увеличивается, поэтому я предполагаю, что там есть утечка памяти, но я не могу понять это , Я попытался удалить экземпляр в конце функции, но это не помогает.Ошибка утечки памяти в каире
void drawCircle(cairo_surface_t *container, int x, int y, int radius, float r, float g, float b, float a)
{
cairo_t *cairoInstance;
cairoInstance = cairo_create(container);
cairo_set_source_rgba(cairoInstance, r, g, b, a);
cairo_arc(cairoInstance, x, y, radius, 0, 2*M_PI);
cairo_stroke_preserve(cairoInstance);
cairo_fill_preserve(cairoInstance);
//delete cairoInstance;
gtk_widget_queue_draw_area(GTK_WIDGET(frame2), 0, 0, WINDOW_WIDTH, WINDOW_HEIGHT);
}
Любые идеи? Спасибо заранее.
использование Valgrind для определения происхождения утечек памяти –