avoiding double 'frees' on MIC