summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-reader/Bkmks.cpp
authorerik <erik>2007-01-19 01:12:38 (UTC)
committer erik <erik>2007-01-19 01:12:38 (UTC)
commit1ab92f1d2b346de7da8ca5c3aaa6bc75b43981e7 (patch) (side-by-side diff)
treeaf4a12bc46e25853386dc53868b869e1bf05d863 /noncore/apps/opie-reader/Bkmks.cpp
parent2b45dc71e79a3eb7d4e8553273c9bc4f4282d50a (diff)
downloadopie-1ab92f1d2b346de7da8ca5c3aaa6bc75b43981e7.zip
opie-1ab92f1d2b346de7da8ca5c3aaa6bc75b43981e7.tar.gz
opie-1ab92f1d2b346de7da8ca5c3aaa6bc75b43981e7.tar.bz2
Every single file in this commit had a memory leak where a resource is
allocated in the constructor but not de-allocated in the destructor. This commit fixes that.
Diffstat (limited to 'noncore/apps/opie-reader/Bkmks.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-reader/Bkmks.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/noncore/apps/opie-reader/Bkmks.cpp b/noncore/apps/opie-reader/Bkmks.cpp
index 440d8be..28f6318 100644
--- a/noncore/apps/opie-reader/Bkmks.cpp
+++ b/noncore/apps/opie-reader/Bkmks.cpp
@@ -10,7 +10,12 @@
const unsigned long BkmkFile::magic = ((unsigned long)'q' << 24) | ((unsigned long)'t' << 16) | ((unsigned long)'r' << 8) | ((unsigned long)BKMKTYPE);
-Bkmk::Bkmk(const unsigned char* _nm, unsigned short _nmlen, const unsigned char* _anno, unsigned short _annolen, unsigned int _p)
+Bkmk::Bkmk(const unsigned char* _nm, unsigned short _nmlen, const unsigned char* _anno, unsigned short _annolen, unsigned int _p) :
+ m_name(0),
+ m_namelen(0),
+ m_anno(0),
+ m_annolen(0),
+ m_position(0)
{
init(_nm, _nmlen, _anno, _annolen, _p);
}
@@ -20,6 +25,17 @@ Bkmk::Bkmk(const tchar* _nm, const unsigned char* _anno, unsigned short annolen,
init(_nm, sizeof(tchar)*(ustrlen(_nm)+1), _anno, annolen, _p);
}
+Bkmk::Bkmk(const Bkmk& rhs) :
+ m_name(0),
+ m_namelen(0),
+ m_anno(0),
+ m_annolen(0),
+ m_position(0)
+{
+ init(rhs.name(), sizeof(tchar)*(ustrlen(rhs.name())+1), rhs.anno(),
+ sizeof(tchar)*(ustrlen(rhs.anno())+1), rhs.value());
+}
+
Bkmk::Bkmk(const tchar* _nm, const tchar* _anno, unsigned int _p) : m_position(_p)
{
if (_anno == NULL)