pango memory leak

hello all,

futher to my previous mail about a memory leak that i suspect in the
pango_font_description_set_family and pango_font_description_set_size functions, i observe that the leak exists in the latest version of pango. i am using fedora core 4    with pango version 1.8.1.

in my program i am continually increasing the size the font and this continually allocates memory. i would like to know the memory allocated for previous font size is not released/reused before allocating new memory for new font size. i also dont understand why new memory is allocated for every time the function ango_font_description_set_size is called. as far as i can see we will be resetting the font size for subsequent size requests.

please refer the program below.
#include <gtk/gtk.h>
int size=15;
void g_exit_callback(GtkWidget *w)
void play_font(gpointer data)
GdkRectangle updateRect;
updateRect.x=0; updateRect.y=0;
updateRect.width=240; updateRect.height=320;
void drawing_callback(GtkWidget *lWidget)
PangoContext *context=NULL;
PangoLayout *layout=NULL;
PangoFontDescription *fontdesc=NULL;
context = gtk_widget_get_pango_context(lWidget);
layout = pango_layout_new(context);

// function that i suspect of leaks - one
// function that i suspect of leaks - two

pango_layout_set_font_description (layout, fontdesc);
pango_layout_set_text(layout,"middle", 6);
gdk_draw_layout(lWidget->window, lWidget->style->fg_gc[GTK_STATE_NORMAL] , 5 , 10 , layout);
pango_font_description_free (fontdesc);
g_object_unref (layout);
int main(int argc, char **argv)
GtkWidget *pwWindow;
GtkWidget *pWidget;
pwWindow = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (pwWindow), "TEST Widget");
gtk_window_set_position (GTK_WINDOW (pwWindow), GTK_WIN_POS_CENTER_ALWAYS);
g_signal_connect (G_OBJECT (pwWindow), "destroy",G_CALLBACK (g_exit_callback), NULL);
pWidget = gtk_drawing_area_new();
gtk_container_add(GTK_CONTAINER(pwWindow), pWidget);
g_signal_connect (G_OBJECT (pWidget),"expose_event", G_CALLBACK (drawing_callback), NULL);
gtk_widget_show (pWidget);
gtk_widget_show (pwWindow);
gtk_main ();
return 0;

thanks and regards,

Yahoo! Messenger with Voice. Make PC-to-Phone Calls to the US (and 30+ countries) for 2¢/min or less.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]