Hi John,
Thanks for the response. I figured out a solution later.
It turns out that freeing the PangoContext using g_object_unref() also frees the associated PangoFontDescription.
I was doing the mistake of freeing the PangoFontDescription again, by using pango_font_description_free().
However, I am curious why memory corruption occurs only after multiple executions.