diff options
author | David Tardon <dtardon@redhat.com> | 2016-02-21 09:58:36 +0100 |
---|---|---|
committer | David Tardon <dtardon@redhat.com> | 2016-02-21 15:39:28 +0100 |
commit | 8f4eec7dae72af1b98c596c58ae480ad955e99d3 (patch) | |
tree | 082e80847345e407923a1d989103e5d60dc2c014 | |
parent | f06c797ef9796e6a176f30528b21d1ea8fea56fe (diff) |
stream cannot be null
-rw-r--r-- | src/lib/Software602Document.cpp | 2 | ||||
-rw-r--r-- | src/lib/WinText602Header.cpp | 2 | ||||
-rw-r--r-- | src/lib/WinText602Header.h | 2 | ||||
-rw-r--r-- | src/lib/WinText602Parser.cpp | 36 | ||||
-rw-r--r-- | src/lib/libsw602_utils.cpp | 36 | ||||
-rw-r--r-- | src/lib/libsw602_utils.h | 12 |
6 files changed, 45 insertions, 45 deletions
diff --git a/src/lib/Software602Document.cpp b/src/lib/Software602Document.cpp index acc0670..5e4f0aa 100644 --- a/src/lib/Software602Document.cpp +++ b/src/lib/Software602Document.cpp @@ -44,7 +44,7 @@ Software602Document::Confidence Software602Document::isSupported(librevenge::RVN if (bool(content)) { content->seek(0, librevenge::RVNG_SEEK_SET); - WinText602Header header(content.get()); + WinText602Header header(*content); // TODO: handle encryption if (header.isValid()) { diff --git a/src/lib/WinText602Header.cpp b/src/lib/WinText602Header.cpp index 0fc10d5..8f88a50 100644 --- a/src/lib/WinText602Header.cpp +++ b/src/lib/WinText602Header.cpp @@ -18,7 +18,7 @@ namespace libsw602 { -WinText602Header::WinText602Header(librevenge::RVNGInputStream *const input) +WinText602Header::WinText602Header(librevenge::RVNGInputStream &input) : m_length(0) , m_valid(false) { diff --git a/src/lib/WinText602Header.h b/src/lib/WinText602Header.h index efc0be0..7dd038d 100644 --- a/src/lib/WinText602Header.h +++ b/src/lib/WinText602Header.h @@ -18,7 +18,7 @@ namespace libsw602 class WinText602Header { public: - explicit WinText602Header(librevenge::RVNGInputStream *input); + explicit WinText602Header(librevenge::RVNGInputStream &input); bool isValid() const; diff --git a/src/lib/WinText602Parser.cpp b/src/lib/WinText602Parser.cpp index 6c44e43..488a5bc 100644 --- a/src/lib/WinText602Parser.cpp +++ b/src/lib/WinText602Parser.cpp @@ -40,17 +40,17 @@ class WinText602SectionMap typedef std::pair<unsigned, unsigned> Section_t; public: - explicit WinText602SectionMap(librevenge::RVNGInputStream *input); + explicit WinText602SectionMap(librevenge::RVNGInputStream &input); bool isPresent(WinText602Section section) const; - RVNGInputStreamPtr getSectionStream(librevenge::RVNGInputStream *input, WinText602Section section) const; + RVNGInputStreamPtr getSectionStream(librevenge::RVNGInputStream &input, WinText602Section section) const; private: std::vector<Section_t> m_sections; }; -WinText602SectionMap::WinText602SectionMap(librevenge::RVNGInputStream *const input) +WinText602SectionMap::WinText602SectionMap(librevenge::RVNGInputStream &input) : m_sections(SECTION_COUNT) { std::fill_n(m_sections.begin(), SECTION_COUNT, std::make_pair(0, 0)); @@ -83,7 +83,7 @@ bool WinText602SectionMap::isPresent(const WinText602Section section) const return false; } -RVNGInputStreamPtr WinText602SectionMap::getSectionStream(librevenge::RVNGInputStream *const input, const WinText602Section section) const +RVNGInputStreamPtr WinText602SectionMap::getSectionStream(librevenge::RVNGInputStream &input, const WinText602Section section) const { RVNGInputStreamPtr strm; @@ -92,7 +92,7 @@ RVNGInputStreamPtr WinText602SectionMap::getSectionStream(librevenge::RVNGInputS const Section_t &limits = m_sections[section]; const unsigned length = limits.second - limits.first; - input->seek(limits.first, librevenge::RVNG_SEEK_SET); + input.seek(limits.first, librevenge::RVNG_SEEK_SET); const unsigned char *const data = readNBytes(input, length); strm.reset(new SW602MemoryStream(data, length)); @@ -107,7 +107,7 @@ namespace libsw602 { WinText602Parser::WinText602Parser(librevenge::RVNGInputStream *const input, librevenge::RVNGTextInterface *const document) - : m_header(input) + : m_header(*input) , m_input(input) , m_document(document) , m_sectionMap() @@ -116,7 +116,7 @@ WinText602Parser::WinText602Parser(librevenge::RVNGInputStream *const input, lib bool WinText602Parser::parse() { - m_sectionMap.reset(new WinText602SectionMap(m_input)); + m_sectionMap.reset(new WinText602SectionMap(*m_input)); m_document->startDocument(librevenge::RVNGPropertyList()); m_document->openPageSpan(librevenge::RVNGPropertyList()); @@ -134,9 +134,9 @@ void WinText602Parser::readText() const RVNGInputStreamPtr textInput(getSection(WinText602_SECTION_TEXT)); const RVNGInputStreamPtr textInfoInput(getSection(WinText602_SECTION_TEXT_INFO)); - const unsigned textLength = readU32(textInput.get()); - const unsigned spanCount = readU32(textInfoInput.get()); - skip(textInfoInput.get(), 6); + const unsigned textLength = readU32(*textInput); + const unsigned spanCount = readU32(*textInfoInput); + skip(*textInfoInput, 6); if (0 != textLength) { @@ -144,12 +144,12 @@ void WinText602Parser::readText() for (unsigned i = 0; i != spanCount; ++i) { - skip(textInfoInput.get(), 4); - const unsigned flags = readU16(textInfoInput.get()); - skip(textInfoInput.get(), 6); - const unsigned format = readU16(textInfoInput.get()); - const unsigned length = readU16(textInfoInput.get()); - skip(textInfoInput.get(), 12); + skip(*textInfoInput, 4); + const unsigned flags = readU16(*textInfoInput); + skip(*textInfoInput, 6); + const unsigned format = readU16(*textInfoInput); + const unsigned length = readU16(*textInfoInput); + skip(*textInfoInput, 12); if (0x100 & flags) { @@ -168,7 +168,7 @@ void WinText602Parser::readText() if (0x8 & format) props.insert("style:text-underline-type", "single"); - const unsigned char *const data = readNBytes(textInput.get(), length); + const unsigned char *const data = readNBytes(*textInput, length); std::string text(reinterpret_cast<const char *>(data), length); m_document->openSpan(props); @@ -183,7 +183,7 @@ void WinText602Parser::readText() RVNGInputStreamPtr WinText602Parser::getSection(const WinText602Section section) const { - return m_sectionMap->getSectionStream(m_input, section); + return m_sectionMap->getSectionStream(*m_input, section); } diff --git a/src/lib/libsw602_utils.cpp b/src/lib/libsw602_utils.cpp index 61ad291..78f264c 100644 --- a/src/lib/libsw602_utils.cpp +++ b/src/lib/libsw602_utils.cpp @@ -14,15 +14,15 @@ namespace libsw602 { -uint8_t readU8(librevenge::RVNGInputStream *input, bool /* bigEndian */) +uint8_t readU8(librevenge::RVNGInputStream &input, bool /* bigEndian */) { - if (!input || input->isEnd()) + if (input.isEnd()) { SW602_DEBUG_MSG(("Throwing EndOfStreamException\n")); throw EndOfStreamException(); } unsigned long numBytesRead; - uint8_t const *p = input->read(sizeof(uint8_t), numBytesRead); + uint8_t const *p = input.read(sizeof(uint8_t), numBytesRead); if (p && numBytesRead == sizeof(uint8_t)) return *(uint8_t const *)(p); @@ -30,15 +30,15 @@ uint8_t readU8(librevenge::RVNGInputStream *input, bool /* bigEndian */) throw EndOfStreamException(); } -uint16_t readU16(librevenge::RVNGInputStream *input, bool bigEndian) +uint16_t readU16(librevenge::RVNGInputStream &input, bool bigEndian) { - if (!input || input->isEnd()) + if (input.isEnd()) { SW602_DEBUG_MSG(("Throwing EndOfStreamException\n")); throw EndOfStreamException(); } unsigned long numBytesRead; - uint8_t const *p = input->read(sizeof(uint16_t), numBytesRead); + uint8_t const *p = input.read(sizeof(uint16_t), numBytesRead); if (p && numBytesRead == sizeof(uint16_t)) { @@ -50,15 +50,15 @@ uint16_t readU16(librevenge::RVNGInputStream *input, bool bigEndian) throw EndOfStreamException(); } -uint32_t readU32(librevenge::RVNGInputStream *input, bool bigEndian) +uint32_t readU32(librevenge::RVNGInputStream &input, bool bigEndian) { - if (!input || input->isEnd()) + if (input.isEnd()) { SW602_DEBUG_MSG(("Throwing EndOfStreamException\n")); throw EndOfStreamException(); } unsigned long numBytesRead; - uint8_t const *p = input->read(sizeof(uint32_t), numBytesRead); + uint8_t const *p = input.read(sizeof(uint32_t), numBytesRead); if (p && numBytesRead == sizeof(uint32_t)) { @@ -70,15 +70,15 @@ uint32_t readU32(librevenge::RVNGInputStream *input, bool bigEndian) throw EndOfStreamException(); } -uint64_t readU64(librevenge::RVNGInputStream *input, bool bigEndian) +uint64_t readU64(librevenge::RVNGInputStream &input, bool bigEndian) { - if (!input || input->isEnd()) + if (input.isEnd()) { SW602_DEBUG_MSG(("Throwing EndOfStreamException\n")); throw EndOfStreamException(); } unsigned long numBytesRead; - uint8_t const *p = input->read(sizeof(uint64_t), numBytesRead); + uint8_t const *p = input.read(sizeof(uint64_t), numBytesRead); if (p && numBytesRead == sizeof(uint64_t)) { @@ -90,16 +90,16 @@ uint64_t readU64(librevenge::RVNGInputStream *input, bool bigEndian) throw EndOfStreamException(); } -const unsigned char *readNBytes(librevenge::RVNGInputStream *const input, const unsigned long numBytes) +const unsigned char *readNBytes(librevenge::RVNGInputStream &input, const unsigned long numBytes) { - if (!input || input->isEnd()) + if (input.isEnd()) { SW602_DEBUG_MSG(("Throwing EndOfStreamException\n")); throw EndOfStreamException(); } unsigned long readBytes = 0; - const unsigned char *const s = input->read(numBytes, readBytes); + const unsigned char *const s = input.read(numBytes, readBytes); if (numBytes != readBytes) { @@ -110,15 +110,15 @@ const unsigned char *readNBytes(librevenge::RVNGInputStream *const input, const return s; } -void skip(librevenge::RVNGInputStream *input, unsigned long numBytes) +void skip(librevenge::RVNGInputStream &input, unsigned long numBytes) { - if (!input || input->isEnd()) + if (input.isEnd()) { SW602_DEBUG_MSG(("Throwing EndOfStreamException\n")); throw EndOfStreamException(); } - if (0 != input->seek(static_cast<long>(numBytes), librevenge::RVNG_SEEK_CUR)) + if (0 != input.seek(static_cast<long>(numBytes), librevenge::RVNG_SEEK_CUR)) { SW602_DEBUG_MSG(("Throwing EndOfStreamException\n")); throw EndOfStreamException(); diff --git a/src/lib/libsw602_utils.h b/src/lib/libsw602_utils.h index c141fef..f97db9c 100644 --- a/src/lib/libsw602_utils.h +++ b/src/lib/libsw602_utils.h @@ -93,14 +93,14 @@ typedef shared_ptr<librevenge::RVNGInputStream> RVNGInputStreamPtr; namespace libsw602 { -uint8_t readU8(librevenge::RVNGInputStream *input, bool = false); -uint16_t readU16(librevenge::RVNGInputStream *input, bool bigEndian=false); -uint32_t readU32(librevenge::RVNGInputStream *input, bool bigEndian=false); -uint64_t readU64(librevenge::RVNGInputStream *input, bool bigEndian=false); +uint8_t readU8(librevenge::RVNGInputStream &input, bool = false); +uint16_t readU16(librevenge::RVNGInputStream &input, bool bigEndian=false); +uint32_t readU32(librevenge::RVNGInputStream &input, bool bigEndian=false); +uint64_t readU64(librevenge::RVNGInputStream &input, bool bigEndian=false); -const unsigned char *readNBytes(librevenge::RVNGInputStream *input, unsigned long numBytes); +const unsigned char *readNBytes(librevenge::RVNGInputStream &input, unsigned long numBytes); -void skip(librevenge::RVNGInputStream *input, unsigned long numBytes); +void skip(librevenge::RVNGInputStream &input, unsigned long numBytes); class EndOfStreamException { |