• Before, the result of srcEng.log10TeV() was directly passed to the cta_nedisp_kern constructor, which stores only a reference to the value instead of the value. Since srcEng.log10TeV() does not return a reference but a value, it is not assured that the actual memory cell containing the value is still valid. This led to problems on CentOS 7.
    
    Now, a local copy is created.
    
    In the future we may avoid storing references and store directly the values. This should result in a negligible overhead, as the actual eval() method is called multiple times. We may still store references for large objects, but at least for simple arguments we should store by value.
    Jürgen Knödlseder authored
     
    Browse File »