Index: /issm/trunk/src/c/objects/Elements/PentaHook.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/PentaHook.cpp	(revision 4206)
+++ /issm/trunk/src/c/objects/Elements/PentaHook.cpp	(revision 4207)
@@ -29,5 +29,5 @@
 /*FUNCTION PentaHook::~PentaHook(){{{1*/
 PentaHook::~PentaHook(){
-	xfree((void**)&hnodes);
+	delete [] this->hnodes;
 }
 /*}}}*/
@@ -35,10 +35,7 @@
 void PentaHook::InitHookNodes(int in_numanalyses){
 
-	ISSMASSERT(in_numanalyses);
+	this->numanalyses=in_numanalyses;
+	this->hnodes=new Hook[in_numanalyses];
 
-	this->numanalyses=in_numanalyses;
-	this->hnodes=(Hook*)xmalloc(in_numanalyses*sizeof(Hook));
-
-	for (int i=0;i<in_numanalyses;i++) this->hnodes[i].Init(NULL,0);
 }
 /*}}}*/
Index: /issm/trunk/src/c/objects/Elements/TriaHook.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/TriaHook.cpp	(revision 4206)
+++ /issm/trunk/src/c/objects/Elements/TriaHook.cpp	(revision 4207)
@@ -29,5 +29,5 @@
 /*FUNCTION TriaHook::~TriaHook(){{{1*/
 TriaHook::~TriaHook(){
-	xfree((void**)&hnodes);
+	delete [] this->hnodes;
 }
 /*}}}*/
@@ -35,10 +35,7 @@
 void TriaHook::InitHookNodes(int in_numanalyses){
 
-	ISSMASSERT(in_numanalyses);
+	this->numanalyses=in_numanalyses;
+	this->hnodes=new Hook[in_numanalyses];
 
-	this->numanalyses=in_numanalyses;
-	this->hnodes=(Hook*)xmalloc(in_numanalyses*sizeof(Hook));
-
-	for (int i=0;i<in_numanalyses;i++) this->hnodes[i].Init(NULL,0);
 }
 /*}}}*/
