Linux compilation of nsgmls (Matthew Howkins)

This commit is contained in:
Peter Howkins
2012-04-11 18:03:23 +01:00
parent cc1d109aa9
commit e60d58be07
17 changed files with 102 additions and 10 deletions

View File

@@ -34,15 +34,15 @@ namespace SP_NAMESPACE {
template<class T, class K, class HF, class KF>
OwnerTable<T, K, HF, KF>::~OwnerTable()
{
for (size_t i = 0; i < vec_.size(); i++)
delete vec_[i];
for (size_t i = 0; i < this->vec_.size(); i++)
delete this->vec_[i];
}
template<class T, class K, class HF, class KF>
void OwnerTable<T, K, HF, KF>::clear()
{
for (size_t i = 0; i < vec_.size(); i++)
delete vec_[i];
for (size_t i = 0; i < this->vec_.size(); i++)
delete this->vec_[i];
PointerTable<T *, K, HF, KF>::clear();
}
@@ -50,12 +50,12 @@ template<class T, class K, class HF, class KF>
void
CopyOwnerTable<T, K, HF, KF>::operator=(const CopyOwnerTable<T, K, HF, KF> &t)
{
clear();
this->clear();
//PointerTable<T *, K, HF, KF>::operator=(t);
// FIXME This isn't exception safe.
for (size_t i = 0; i < vec_.size(); i++)
if (vec_[i])
vec_[i] = vec_[i]->copy();
for (size_t i = 0; i < this->vec_.size(); i++)
if (this->vec_[i])
this->vec_[i] = this->vec_[i]->copy();
}
#ifdef SP_NAMESPACE