X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvmm_string.c;h=01c408c8c3ccbd10bd98cd81b2591e8e9ba97b86;hb=c5ba903ae97ea49bbac5b660f76d2031c5302a3d;hp=75a8975a289c9ad869e86b6d1019f747800bbf64;hpb=3a64514e2fbdb79da57b289fc94b336b78046ba2;p=palacios.git diff --git a/palacios/src/palacios/vmm_string.c b/palacios/src/palacios/vmm_string.c index 75a8975..01c408c 100644 --- a/palacios/src/palacios/vmm_string.c +++ b/palacios/src/palacios/vmm_string.c @@ -71,6 +71,11 @@ void * memcpy(void * dst, const void * src, size_t n) { #ifdef V3_CONFIG_BUILT_IN_MEMMOVE void * memmove(void * dst, const void * src, size_t n) { uint8_t * tmp = (uint8_t *)V3_Malloc(n); + + if (!tmp) { + PrintError(info->vm_info, info, "Cannot allocate in built-in memmove\n"); + return NULL; + } memcpy(tmp, src, n); memcpy(dst, tmp, n); @@ -285,6 +290,12 @@ char * strdup(const char * s1) { char *ret; ret = V3_Malloc(strlen(s1) + 1); + + if (!ret) { + PrintError(VM_NONE, VCORE_NONE, "Cannot allocate in built-in strdup\n"); + return NULL; + } + strcpy(ret, s1); return ret;