X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/7f38db72b754a1a5205f2e904aaacf5822793198..896d63aa5605a9b6ef641830eae4038addc53c60:/lib/dvb/metaparser.cpp diff --git a/lib/dvb/metaparser.cpp b/lib/dvb/metaparser.cpp index 27b5ac66..3e3f9a79 100644 --- a/lib/dvb/metaparser.cpp +++ b/lib/dvb/metaparser.cpp @@ -5,6 +5,7 @@ eDVBMetaParser::eDVBMetaParser() { m_time_create = 0; + m_data_ok = 0; } int eDVBMetaParser::parseFile(const std::string &basename) @@ -64,6 +65,7 @@ int eDVBMetaParser::parseMeta(const std::string &tsname) ++linecnt; } fclose(f); + m_data_ok = 1; return 0; } @@ -111,6 +113,8 @@ int eDVBMetaParser::parseRecordings(const std::string &filename) m_name = description; m_description = ""; m_time_create = 0; + + m_data_ok = 1; fclose(f); return 0; } @@ -118,3 +122,17 @@ int eDVBMetaParser::parseRecordings(const std::string &filename) fclose(f); return -1; } + +int eDVBMetaParser::updateMeta(const std::string &tsname) +{ + if (!m_data_ok) + return -1; + std::string filename = tsname + ".meta"; + + FILE *f = fopen(filename.c_str(), "w"); + if (!f) + return -ENOENT; + fprintf(f, "%s\n%s\n%s\n%d\n%s\n", m_ref.toString().c_str(), m_name.c_str(), m_description.c_str(), m_time_create, m_tags.c_str()); + fclose(f); + return 0; +}