diff options
| author | jhurst <jhurst@cinecert.com> | 2019-06-12 18:08:45 -0700 |
|---|---|---|
| committer | dbullock <dbullock@cinecert.com> | 2019-06-28 09:37:14 -0700 |
| commit | 7d74ebdfabeaa9611c125451bf6eedcbf6018074 (patch) | |
| tree | 4ee678dc18c709ad358f3dff16317d6150272d95 /src | |
| parent | 250b2032101b132a29e935173034cc4393f76978 (diff) | |
Modified to return preferred result codes
Diffstat (limited to 'src')
| -rwxr-xr-x | src/MXF.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/MXF.cpp b/src/MXF.cpp index df8bb28..b49fb83 100755 --- a/src/MXF.cpp +++ b/src/MXF.cpp @@ -128,7 +128,7 @@ ASDCP::MXF::RIP::InitFromFile(const Kumu::FileReader& Reader) if (m_ValueLength < 4) { DefaultLogSink().Error("RIP is too short.\n"); - return RESULT_FAIL; + return RESULT_KLV_CODING(__LINE__, __FILE__); } Kumu::MemIOReader MemRDR(m_ValueStart, m_ValueLength - 4); result = PairArray.Unarchive(&MemRDR) ? RESULT_OK : RESULT_KLV_CODING(__LINE__, __FILE__); @@ -456,7 +456,7 @@ ASDCP::MXF::Primer::InitFromBuffer(const byte_t* p, ui32_t l) if (m_ValueStart + m_ValueLength > p + l) { DefaultLogSink().Error("Primer entry too long.\n"); - return RESULT_FAIL; + return RESULT_KLV_CODING(__LINE__, __FILE__); } Kumu::MemIOReader MemRDR(m_ValueStart, m_ValueLength); result = LocalTagEntryBatch.Unarchive(&MemRDR) ? RESULT_OK : RESULT_KLV_CODING(__LINE__, __FILE__); @@ -1390,11 +1390,12 @@ ASDCP::MXF::InterchangeObject::InitFromBuffer(const byte_t* p, ui32_t l) if ( ASDCP_SUCCESS(result) ) { - if (m_ValueStart + m_ValueLength > p + l) - { - DefaultLogSink().Error("Interchange Object value extends past buffer length.\n"); - return RESULT_FAIL; - } + if ( ( m_ValueStart + m_ValueLength ) > ( p + l ) ) + { + DefaultLogSink().Error("Interchange Object value extends past buffer length.\n"); + return RESULT_KLV_CODING(__LINE__, __FILE__); + } + TLVReader MemRDR(m_ValueStart, m_ValueLength, m_Lookup); result = InitFromTLVSet(MemRDR); } |
