diff --git a/cpp/core/src/zxing/oned/rss/Pair.cpp b/cpp/core/src/zxing/oned/rss/Pair.cpp
old mode 100644
new mode 100755
index 5c998c3..45770e7
--- a/cpp/core/src/zxing/oned/rss/Pair.cpp
+++ b/cpp/core/src/zxing/oned/rss/Pair.cpp
@@ -14,7 +14,7 @@ using zxing::oned::rss::DataCharacter;
 using zxing::oned::rss::FinderPattern;
 
 Pair::Pair(int value, int checksumPortion, Ref<FinderPattern> finderPattern)
- : DataCharacter(value, checksumPortion) {
+ : DataCharacter(value, checksumPortion), _count(0) {
      _finderPattern = finderPattern;
 }
 
diff --git a/cpp/core/src/zxing/oned/rss/RSS14Reader.cpp b/cpp/core/src/zxing/oned/rss/RSS14Reader.cpp
old mode 100644
new mode 100755
index 57cb553..6d35c7c
--- a/cpp/core/src/zxing/oned/rss/RSS14Reader.cpp
+++ b/cpp/core/src/zxing/oned/rss/RSS14Reader.cpp
@@ -53,11 +53,11 @@ RSS14Reader::RSS14Reader() {
 RSS14Reader::~RSS14Reader() {}
 
 Ref<Result> RSS14Reader::decodeRow(int rowNumber, Ref<BitArray> row) {
-    DecodeHints *hints = new DecodeHints(DecodeHints::RSS_14_HINT);
-    Ref<Pair> leftPair = decodePair(row, false, rowNumber, *hints);
+    DecodeHints hints(DecodeHints::RSS_14_HINT);
+    Ref<Pair> leftPair = decodePair(row, false, rowNumber, hints);
     addOrTally(possibleLeftPairs, leftPair);
     row->reverse();
-    Ref<Pair> rightPair = decodePair(row, true, rowNumber, *hints);
+    Ref<Pair> rightPair = decodePair(row, true, rowNumber, hints);
     addOrTally(possibleRightPairs, rightPair);
     row->reverse();
     int lefSize = possibleLeftPairs.size();
@@ -97,7 +97,7 @@ void RSS14Reader::addOrTally(std::vector< Ref<Pair> > &possiblePairs, Ref<Pair>
         }
     }
     if (!found) {
-        possiblePairs.insert(possiblePairs.begin(), pair);
+        possiblePairs.push_back(pair);
     }
 }
 
diff --git a/cpp/core/src/zxing/oned/rss/expanded/decoders/CurrentParsingState.cpp b/cpp/core/src/zxing/oned/rss/expanded/decoders/CurrentParsingState.cpp
old mode 100644
new mode 100755
index 0c8d565..58cf2c8
--- a/cpp/core/src/zxing/oned/rss/expanded/decoders/CurrentParsingState.cpp
+++ b/cpp/core/src/zxing/oned/rss/expanded/decoders/CurrentParsingState.cpp
@@ -10,7 +10,9 @@
 
 using zxing::oned::rss::expanded::decoders::CurrentParsingState;
 
-CurrentParsingState::CurrentParsingState() {
+CurrentParsingState::CurrentParsingState()
+:   _position(0),
+    _encoding(State::NUMERIC) {
     
 }
 
@@ -48,4 +50,4 @@ void CurrentParsingState::setAlpha() {
 
 void CurrentParsingState::setIsoIec646() {
     _encoding = ISO_IEC_646;
-}
\ No newline at end of file
+}
