Xorg: avoid excessive malloc / free