diff --git a/src/algorithms/tracking/gnuradio_blocks/galileo_e1_dll_pll_veml_tracking_cc.cc b/src/algorithms/tracking/gnuradio_blocks/galileo_e1_dll_pll_veml_tracking_cc.cc index a16eaaa0a..c611bbb9c 100755 --- a/src/algorithms/tracking/gnuradio_blocks/galileo_e1_dll_pll_veml_tracking_cc.cc +++ b/src/algorithms/tracking/gnuradio_blocks/galileo_e1_dll_pll_veml_tracking_cc.cc @@ -251,14 +251,27 @@ void galileo_e1_dll_pll_veml_tracking_cc::start_tracking() galileo_e1_dll_pll_veml_tracking_cc::~galileo_e1_dll_pll_veml_tracking_cc() { - d_dump_file.close(); + if (d_dump_file.is_open()) + { + try + { + d_dump_file.close(); + }catch(const std::exception & ex) + { + LOG(WARNING)<<"Exception in destructor "<free_cuda(); - delete[] d_Prompt_buffer; - delete(multicorrelator_gpu); + if (d_dump_file.is_open()) + { + try + { + d_dump_file.close(); + }catch(const std::exception & ex) + { + LOG(WARNING)<<"Exception in destructor "<free_cuda(); + delete(multicorrelator_gpu); + }catch(const std::exception & ex) + { + LOG(WARNING)<<"Exception in destructor "<