aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/vasp
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2004-08-31 04:07:35 +0000
committerThomas Grill <xovo@users.sourceforge.net>2004-08-31 04:07:35 +0000
commit1a23e8233e6c1cbc30b9ddee4df153c21f4b282b (patch)
tree1c79382a41ef857e5beeed6f27ca1c85c81ddac1 /externals/grill/vasp
parentd28900c480f4ea568acdff80372f12383d463e8c (diff)
""
svn path=/trunk/; revision=1982
Diffstat (limited to 'externals/grill/vasp')
-rw-r--r--externals/grill/vasp/changes.txt2
-rw-r--r--externals/grill/vasp/source/main.cpp2
-rw-r--r--externals/grill/vasp/source/obj_imm.cpp2
-rw-r--r--externals/grill/vasp/source/obj_peaks.cpp2
-rw-r--r--externals/grill/vasp/source/obj_q.cpp4
-rw-r--r--externals/grill/vasp/source/ops_search.cpp9
6 files changed, 17 insertions, 4 deletions
diff --git a/externals/grill/vasp/changes.txt b/externals/grill/vasp/changes.txt
index 5d79e4dc..8a2a7dc1 100644
--- a/externals/grill/vasp/changes.txt
+++ b/externals/grill/vasp/changes.txt
@@ -21,6 +21,8 @@ Version history:
- ADD: [vasp.channels?] reports number of channels in the first vasp vector (buffer/array)
- CHANGE: vasp.min?, vasp.max?, vasp.amin?, vasp.amax?, vasp.rmin?, vasp.rmax? no longer return the reference vasp / return a list of vector maxima/minima
- CHANGE: inherited several classes from the flext class, so that new and delete use the RT-system functions
+- FIX: fixed memory leaks associated to VBuffer retrieval
+- FIX: fixed bug on vasp.search for vectors with 0 channels
0.1.2:
- FIX: bug in vasp.frames* ... wrong argument
diff --git a/externals/grill/vasp/source/main.cpp b/externals/grill/vasp/source/main.cpp
index 60352bda..7fb2f0bc 100644
--- a/externals/grill/vasp/source/main.cpp
+++ b/externals/grill/vasp/source/main.cpp
@@ -12,7 +12,7 @@ WARRANTIES, see the file, "license.txt," in this distribution.
#include "classes.h"
-const C *VASP_VERSION = "0.1.3pre11";
+const C *VASP_VERSION = "0.1.3pre12";
#include "opfuns.h"
diff --git a/externals/grill/vasp/source/obj_imm.cpp b/externals/grill/vasp/source/obj_imm.cpp
index ba421ff4..ef75f228 100644
--- a/externals/grill/vasp/source/obj_imm.cpp
+++ b/externals/grill/vasp/source/obj_imm.cpp
@@ -99,6 +99,8 @@ public:
Vasp ret(len,vr);
ToOutVasp(0,ret);
+
+ delete buf;
}
}
diff --git a/externals/grill/vasp/source/obj_peaks.cpp b/externals/grill/vasp/source/obj_peaks.cpp
index e7d7dd80..c9867150 100644
--- a/externals/grill/vasp/source/obj_peaks.cpp
+++ b/externals/grill/vasp/source/obj_peaks.cpp
@@ -98,6 +98,8 @@ public:
ToOutAnything(1,sym_list,pkfnd,lst);
delete[] pos;
delete[] lst;
+
+ delete buf;
}
}
diff --git a/externals/grill/vasp/source/obj_q.cpp b/externals/grill/vasp/source/obj_q.cpp
index c3f86ca5..e3c01f44 100644
--- a/externals/grill/vasp/source/obj_q.cpp
+++ b/externals/grill/vasp/source/obj_q.cpp
@@ -51,6 +51,8 @@ public:
AtomList lst(cnt);
for(I i = 0; i < cnt; ++i,++p) SetFloat(lst[i],*p);
ToOutList(0,lst);
+
+ delete buf;
}
}
@@ -110,6 +112,8 @@ public:
}
ToOutList(0,pos);
ToOutList(1,lst);
+
+ delete buf;
}
}
diff --git a/externals/grill/vasp/source/ops_search.cpp b/externals/grill/vasp/source/ops_search.cpp
index d805437d..bc7c1345 100644
--- a/externals/grill/vasp/source/ops_search.cpp
+++ b/externals/grill/vasp/source/ops_search.cpp
@@ -79,12 +79,15 @@ BL VecOp::d_search(OpParam &p)
Vasp *VaspOp::m_search(OpParam &p,CVasp &src,const Argument &arg,CVasp *dst,BL st)
{
Vasp *ret = NULL;
- if(src.Vectors() > 1)
- post("%s - More than one vector in vasp!",p.opName());
+ if(src.Vectors() != 1)
+ post("%s - Need exactly one vector in vasp!",p.opName());
else if(arg.CanbeFloat() || (arg.IsList() && arg.GetList().Count() >= 1)) {
I fr = src.Frames();
I o = src.Vector(0).Offset();
- I sz = src.Buffer(0)->Frames();
+
+ VBuffer *buf = src.Buffer(0);
+ I sz = buf->Frames();
+ delete buf;
CVasp all(src);
if(st) {