diff options
-rw-r--r-- | Changelog.txt | 2 | ||||
-rw-r--r-- | src/common/malloc.c | 2 | ||||
-rw-r--r-- | src/common/malloc.h | 12 | ||||
-rw-r--r-- | src/map/pet.c | 2 |
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++){ |