summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Tardon <dtardon@redhat.com>2016-02-21 09:58:36 +0100
committerDavid Tardon <dtardon@redhat.com>2016-02-21 15:39:28 +0100
commit8f4eec7dae72af1b98c596c58ae480ad955e99d3 (patch)
tree082e80847345e407923a1d989103e5d60dc2c014
parentf06c797ef9796e6a176f30528b21d1ea8fea56fe (diff)
stream cannot be null
-rw-r--r--src/lib/Software602Document.cpp2
-rw-r--r--src/lib/WinText602Header.cpp2
-rw-r--r--src/lib/WinText602Header.h2
-rw-r--r--src/lib/WinText602Parser.cpp36
-rw-r--r--src/lib/libsw602_utils.cpp36
-rw-r--r--src/lib/libsw602_utils.h12
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
{