gsourceclosure: use g_cclosure_marshal_generic