diff --git a/asterisk.c b/asterisk.c
index 9106a5621c99eb6c36591b5531ab547416373ca1..3edefd2230fe7a6cfb07a97f53208cd4dac4617b 100755
--- a/asterisk.c
+++ b/asterisk.c
@@ -1851,7 +1851,7 @@ struct hostent *ast_gethostbyname(const char *host, struct ast_hostent *hp)
 
 	res = gethostbyname_r(host, &hp->hp, hp->buf, sizeof(hp->buf), &result, &herrno);
 
-	if (res || !hp->hp.h_addr)
+	if (res || !hp->hp.h_addr_list || !hp->hp.h_addr_list[0])
 		return NULL;
 	return &hp->hp;
 }