aboutsummaryrefslogtreecommitdiffstats
path: root/lib/siscomponentrecord.cpp
diff options
context:
space:
mode:
authorDaniel Brahneborg <basic@chello.se>2002-03-28 09:47:25 +0000
committerDaniel Brahneborg <basic@chello.se>2002-03-28 09:47:25 +0000
commit81e05de4391c11fad7faf9bc164f92e128a49d25 (patch)
treed69f635c5986154f4e629a8f16de42676ccbbf11 /lib/siscomponentrecord.cpp
parent1d9b2e0e156f9a58bd642b9f9e8b2a08e768f5ed (diff)
downloadplptools-81e05de4391c11fad7faf9bc164f92e128a49d25.tar.gz
plptools-81e05de4391c11fad7faf9bc164f92e128a49d25.tar.bz2
plptools-81e05de4391c11fad7faf9bc164f92e128a49d25.zip
Some buffer overrun checks.
Removed the --force flag.
Diffstat (limited to 'lib/siscomponentrecord.cpp')
-rw-r--r--lib/siscomponentrecord.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/siscomponentrecord.cpp b/lib/siscomponentrecord.cpp
index 83781d1..3507bce 100644
--- a/lib/siscomponentrecord.cpp
+++ b/lib/siscomponentrecord.cpp
@@ -29,6 +29,8 @@
SISComponentNameRecord::~SISComponentNameRecord()
{
+ for (int i = 0; i < m_nameCount; ++i)
+ delete[] m_names[i];
delete[] m_names;
}
@@ -62,6 +64,7 @@ SISComponentNameRecord::fillFrom(uint8_t* buf, int base, off_t len,
// Then read ptrs.
//
m_names = new uint8_t*[n];
+ m_nameCount = n;
for (int i = 0; i < n; ++i)
{
m_namePtrs[i] = read32(p + size);