diff --git a/src/reader.cpp b/src/reader.cpp index c7b99260e7..025445ca24 100644 --- a/src/reader.cpp +++ b/src/reader.cpp @@ -28,6 +28,12 @@ Reader::Reader(LAMMPS *lmp) : Pointers(lmp) compressed = false; } +// avoid resource leak +Reader::~Reader() +{ + if (fp != nullptr) close_file(); +} + /* ---------------------------------------------------------------------- try to open given file generic version for ASCII files with optional compression or for native binary dumps diff --git a/src/reader.h b/src/reader.h index 93f9197b7a..753b6956f7 100644 --- a/src/reader.h +++ b/src/reader.h @@ -23,6 +23,7 @@ namespace LAMMPS_NS { class Reader : protected Pointers { public: Reader(class LAMMPS *); + ~Reader() override; virtual void settings(int, char **);