Change GCRetain() and GCRelease() order