//This is the Gaisser-Hillas function
Double_t X_mu_0=par[3];
Double_t Normalization=par[0];
Double_t Diff=par[1]-X_mu_0;
Double_t Term=pow((*x-X_mu_0)/Diff,Diff/par[2]);
Double_t Exponential=TMath::Exp((par[1]-*x)/par[2]);

return ( Normalization * Term * Exponential);
}

Is there some additional step that needs to be taken to correctly delete the TF1*?

I am assuming it has to do with something noted for the method, “It is then recommended either to clone the return object or calling again the GetHistogram function whenever is needed.”