--- deliantra/server/common/links.C 2006/08/13 17:16:00 1.1
+++ deliantra/server/common/links.C 2007/07/01 05:00:17 1.9
@@ -1,30 +1,25 @@
/*
- * static char *rcsid_friend_c =
- * "$Id: links.C,v 1.1 2006/08/13 17:16:00 elmex Exp $";
+ * This file is part of Crossfire TRT, the Roguelike Realtime MORPG.
+ *
+ * Copyright (©) 2005,2006,2007 Marc Alexander Lehmann / Robin Redeker / the Crossfire TRT team
+ * Copyright (©) 1992,2007 Frank Tore Johansen
+ *
+ * Crossfire TRT is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ *
+ * The authors can be reached via e-mail to
*/
-/*
- CrossFire, A Multiplayer game for X-windows
-
- Copyright (C) 1992 Frank Tore Johansen
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
- The author can be reached via e-mail to frankj@ifi.uio.no.
-*/
-
#include
/*
@@ -32,11 +27,13 @@
* a pointer to it.
*/
-objectlink *get_objectlink(void) {
- objectlink *ol=(objectlink *)CALLOC(1,sizeof(objectlink));
- ol->ob=NULL;
- ol->next=NULL;
- ol->id = 0;
+objectlink *
+get_objectlink (void)
+{
+ objectlink *ol = new objectlink;
+
+ ol->ob = 0;
+ ol->next = 0;
return ol;
}
@@ -45,10 +42,13 @@
* a pointer to it.
*/
-oblinkpt *get_objectlinkpt(void) {
- oblinkpt *obp = (oblinkpt *) malloc(sizeof(oblinkpt));
- obp->link = NULL;
- obp->next = NULL;
+oblinkpt *
+get_objectlinkpt (void)
+{
+ oblinkpt *obp = new oblinkpt;
+
+ obp->link = 0;
+ obp->next = 0;
obp->value = 0;
return obp;
}
@@ -57,20 +57,27 @@
* Recursively frees all objectlinks
*/
-void free_objectlink(objectlink *ol) {
+void
+free_objectlink (objectlink * ol)
+{
if (ol->next)
- free_objectlink(ol->next);
- free(ol);
+ free_objectlink (ol->next);
+
+ delete ol;
}
/*
* Recursively frees all linked list of objectlink pointers
*/
-void free_objectlinkpt(oblinkpt *obp) {
+void
+free_objectlinkpt (oblinkpt *obp)
+{
if (obp->next)
- free_objectlinkpt(obp->next);
+ free_objectlinkpt (obp->next);
+
if (obp->link)
- free_objectlink(obp->link);
- free(obp);
+ free_objectlink (obp->link);
+
+ delete obp;
}