Use g_new/g_free for consistency