summaryrefslogtreecommitdiff
path: root/src/Dict.cpp
diff options
context:
space:
mode:
authorjhurst <jhurst@cinecert.com>2009-05-19 00:12:55 +0000
committerjhurst <>2009-05-19 00:12:55 +0000
commit8243e05863f05772b1438c291d5f2fa79a69a8b7 (patch)
tree51948f8d86330c3e82234ecd8d684b6ce9a659fd /src/Dict.cpp
parentfd73a272189d3d121989b8437b7fbe5402160aaa (diff)
duh
Diffstat (limited to 'src/Dict.cpp')
-rwxr-xr-xsrc/Dict.cpp23
1 files changed, 17 insertions, 6 deletions
diff --git a/src/Dict.cpp b/src/Dict.cpp
index aaef990..0034110 100755
--- a/src/Dict.cpp
+++ b/src/Dict.cpp
@@ -133,7 +133,6 @@ ASDCP::DefaultSMPTEDict()
return s_SMPTEDict;
}
-
//------------------------------------------------------------------------------------------
//
@@ -176,16 +175,18 @@ ASDCP::Dictionary::AddEntry(const MDDEntry& Entry, ui32_t index)
bool
ASDCP::Dictionary::DeleteEntry(ui32_t index)
{
- // is this index already there?
std::map<ui32_t, ASDCP::UL>::iterator rii = m_md_rev_lookup.find(index);
-
if ( rii != m_md_rev_lookup.end() )
{
std::map<ASDCP::UL, ui32_t>::iterator ii = m_md_lookup.find(rii->second);
assert(ii != m_md_lookup.end());
- char buf[64];
- Kumu::DefaultLogSink().Warn("Deleting %s: %s\n", ii->first.EncodeString(buf, 64), m_MDD_Table[index].name);
+ MDDEntry NilEntry;
+ memset(&NilEntry, 0, sizeof(NilEntry));
+
+ m_md_lookup.erase(ii);
+ m_md_rev_lookup.erase(rii);
+ m_MDD_Table[index] = NilEntry;
return true;
}
@@ -196,6 +197,11 @@ ASDCP::Dictionary::DeleteEntry(ui32_t index)
const ASDCP::MDDEntry&
ASDCP::Dictionary::Type(MDD_t type_id) const
{
+ std::map<ui32_t, ASDCP::UL>::const_iterator rii = m_md_rev_lookup.find(type_id);
+
+ if ( rii == m_md_rev_lookup.end() )
+ Kumu::DefaultLogSink().Warn("Unknown UL type_id: %d\n", type_id);
+
return m_MDD_Table[type_id];
}
@@ -214,7 +220,12 @@ ASDCP::Dictionary::FindUL(const byte_t* ul_buf) const
i = m_md_lookup.find(UL(tmp_ul));
if ( i == m_md_lookup.end() )
- return 0;
+ {
+ char buf[64];
+ UL TmpUL(ul_buf);
+ Kumu::DefaultLogSink().Warn("Unknown UL: %s\n", TmpUL.EncodeString(buf, 64));
+ return 0;
+ }
}
return &m_MDD_Table[(*i).second];