diff --git a/gtsam_unstable/linear/QPSParser.cpp b/gtsam_unstable/linear/QPSParser.cpp index 8bf81a111..331081126 100644 --- a/gtsam_unstable/linear/QPSParser.cpp +++ b/gtsam_unstable/linear/QPSParser.cpp @@ -129,6 +129,8 @@ struct QPSParser::MPSGrammar: base_grammar { QP QPSParser::Parse() { RawQP rawData; + std::fstream stream(fileName_.c_str()); + stream.unsetf(std::ios::skipws); boost::spirit::basic_istream_iterator begin(stream); boost::spirit::basic_istream_iterator last; diff --git a/gtsam_unstable/linear/QPSParser.h b/gtsam_unstable/linear/QPSParser.h index 9cb795b3c..6e8b8164b 100644 --- a/gtsam_unstable/linear/QPSParser.h +++ b/gtsam_unstable/linear/QPSParser.h @@ -17,13 +17,12 @@ namespace gtsam { class QPSParser { private: - std::fstream stream; + std::string fileName_; struct MPSGrammar; public: QPSParser(const std::string& fileName) : - stream(findExampleDataFile(fileName).c_str()) { - stream.unsetf(std::ios::skipws); + fileName_(findExampleDataFile(fileName)) { } QP Parse();