summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog.txt2
-rw-r--r--src/common/malloc.c2
-rw-r--r--src/common/malloc.h12
-rw-r--r--src/map/pet.c2
4 files changed, 16 insertions, 2 deletions
diff --git a/Changelog.txt b/Changelog.txt
index f7f3dddd7..61404e627 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -1,5 +1,7 @@
Date Added
12/29
+ * Fixing a crash if you change the name of a pet you don't have (SVN 862) [MouseJstr]
+ * Eliminated src/common/malloc.c when not needed [MouseJstr]
* Some code cleanup in prep for new debugging malloc (SVN 861) [MouseJstr]
* Updated Soul Breaker's damage calculation [celest]
* Updated Meteor Assault's cast delay to be not affected by dex [celest]
diff --git a/src/common/malloc.c b/src/common/malloc.c
index fad5183d1..ed5fb2e44 100644
--- a/src/common/malloc.c
+++ b/src/common/malloc.c
@@ -1,3 +1,4 @@
+#if !defined(DMALLOC) && !defined(GCOLLECT) && !defined(BCHECK)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -49,3 +50,4 @@ void * _bcalloc(size_t size, size_t cnt) {
memset(ret, 0, size * cnt);
return ret;
}
+#endif
diff --git a/src/common/malloc.h b/src/common/malloc.h
index 7b09d7074..860f8dd7b 100644
--- a/src/common/malloc.h
+++ b/src/common/malloc.h
@@ -3,8 +3,18 @@
#include <stdlib.h>
-#if defined(GCOLLECT)
+#if defined(DMALLOC)
+#include "dmalloc.h"
+
+#define aMalloc(size) \
+ dmalloc_malloc(__FILE__, __LINE__, (size), DMALLOC_FUNC_MALLOC, 0, 0)
+#define aCalloc(count,size) \
+ dmalloc_malloc(__FILE__, __LINE__, (count)*(size), DMALLOC_FUNC_CALLOC, 0, 0)
+#define aRealloc(ptr,size) \
+ dmalloc_realloc(__FILE__, __LINE__, (ptr), (size), DMALLOC_FUNC_REALLOC, 0)
+
+#elif defined(GCOLLECT)
#include "gc.h"
#define aMalloc(n) GC_MALLOC(n)
#define aCalloc(m,n) _bcalloc(m,n)
diff --git a/src/map/pet.c b/src/map/pet.c
index 3c87a91e5..545cc079f 100644
--- a/src/map/pet.c
+++ b/src/map/pet.c
@@ -955,7 +955,7 @@ int pet_change_name(struct map_session_data *sd,char *name)
nullpo_retr(1, sd);
- if(sd->pet.rename_flag == 1 && battle_config.pet_rename == 0)
+ if((sd->pd == NULL) || (sd->pet.rename_flag == 1 && battle_config.pet_rename == 0))
return 1;
for(i=0;i<24 && name[i];i++){