cvs: /php4/ext/hyperwave hg_comm.c hw.c

From: Date: Tue, 17 Aug 1999 09:59:19 +0000
Subject: cvs: /php4/ext/hyperwave hg_comm.c hw.c
Groups: php.version4 
Request: Send a blank email to php-version4+get-3474@lists.php.net to get a copy of this message
steinm Tue Aug 17 05:59:19 1999 EDT Modified files: /php4/ext/hyperwave hg_comm.c hw.c Log: fixed potential segm faults Index: php4/ext/hyperwave/hg_comm.c diff -u php4/ext/hyperwave/hg_comm.c:1.9 php4/ext/hyperwave/hg_comm.c:1.10 --- php4/ext/hyperwave/hg_comm.c:1.9 Fri Aug 6 02:39:54 1999 +++ php4/ext/hyperwave/hg_comm.c Tue Aug 17 05:59:18 1999 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: hg_comm.c,v 1.9 1999/08/06 06:39:54 steinm Exp $ */ +/* $Id: hg_comm.c,v 1.10 1999/08/17 09:59:18 steinm Exp $ */ /* #define HW_DEBUG */ @@ -496,7 +496,7 @@ snprintf(bgstr, BUFFERLEN, " background='%s'", cur_ptr->link); break; case HW_INTAG_LINK: - snprintf(istr, BUFFERLEN, " %s='%s' start=%d", cur_ptr->tagattr, cur_ptr->link, cur_ptr->start); + snprintf(istr, BUFFERLEN, " %s='%s'", cur_ptr->tagattr, cur_ptr->link); offset -= 4; /* because there is no closing tag </A> */ /* laststart = cur_ptr->start; */ break; @@ -1809,8 +1809,8 @@ ptr = (int *) retmsg->buf; if(*ptr == 0) { attributes = estrdup(retmsg->buf+sizeof(int)); - efree(retmsg); efree(retmsg->buf); + efree(retmsg); } else { error = *ptr; attributes = NULL; Index: php4/ext/hyperwave/hw.c diff -u php4/ext/hyperwave/hw.c:1.15 php4/ext/hyperwave/hw.c:1.16 --- php4/ext/hyperwave/hw.c:1.15 Fri Aug 6 06:41:58 1999 +++ php4/ext/hyperwave/hw.c Tue Aug 17 05:59:18 1999 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: hw.c,v 1.15 1999/08/06 10:41:58 steinm Exp $ */ +/* $Id: hw.c,v 1.16 1999/08/17 09:59:18 steinm Exp $ */ #if COMPILE_DL #include "dl/phpdl.h" #endif @@ -389,7 +389,7 @@ int i, count, keytype; ulong length; char *key, str[BUFFERLEN], *objrec = NULL; - pval *keydata; + zval *keydata, **keydataptr; if(NULL == lht) return NULL; @@ -403,7 +403,8 @@ for(i=0; i<count; i++) { keytype = zend_hash_get_current_key(lht, &key, &length); if(HASH_KEY_IS_STRING == keytype) { - zend_hash_get_current_data(lht, (void **) &keydata); + zend_hash_get_current_data(lht, (void **) &keydataptr); + keydata = *keydataptr; switch(keydata->type) { case IS_STRING: snprintf(str, BUFFERLEN, "%s=%s\n", key, keydata->value.str.val); @@ -456,8 +457,8 @@ static int * make_ints_from_array(HashTable *lht) { int i, count; - int *objrec = NULL; - pval *keydata; + int *objids = NULL; + zval **keydata; if(NULL == lht) return NULL; @@ -466,20 +467,20 @@ return NULL; zend_hash_internal_pointer_reset(lht); - if(NULL == (objrec = emalloc(count*sizeof(int)))) + if(NULL == (objids = emalloc(count*sizeof(int)))) return NULL; for(i=0; i<count; i++) { zend_hash_get_current_data(lht, (void **) &keydata); - switch(keydata->type) { + switch((*keydata)->type) { case IS_LONG: - objrec[i] = keydata->value.lval; + objids[i] = (*keydata)->value.lval; break; default: - objrec[i] = 0; + objids[i] = 0; } zend_hash_move_forward(lht); } - return objrec; + return objids; } #define BUFFERLEN 30 @@ -1175,7 +1176,7 @@ char **objects = NULL; int count, *ids, i; HashTable *lht; - pval *keydata; + zval **keydata; lht = argv[1]->value.ht; if(0 == (count = zend_hash_num_elements(lht))) @@ -1185,12 +1186,12 @@ zend_hash_internal_pointer_reset(lht); for(i=0; i<count; i++) { zend_hash_get_current_data(lht, (void **) &keydata); - switch(keydata->type) { + switch((*keydata)->type) { case IS_LONG: - ids[i] = keydata->value.lval; + ids[i] = (*keydata)->value.lval; break; default: - ids[i] = keydata->value.lval; + ids[i] = (*keydata)->value.lval; } zend_hash_move_forward(lht); } @@ -1375,12 +1376,13 @@ modification = strdup(""); for(i=0; i<zend_hash_num_elements(newobjarr); i++) { char *key, *str, *str1, newattribute[BUFFERLEN]; - pval *data; + pval *data, **dataptr; int j, noinsert=1; ulong ind; zend_hash_get_current_key(newobjarr, &key, &ind); - zend_hash_get_current_data(newobjarr, (void *) &data); + zend_hash_get_current_data(newobjarr, (void *) &dataptr); + data = *dataptr; switch(data->type) { case IS_STRING: if(strlen(data->value.str.val) == 0) @@ -1474,12 +1476,13 @@ zend_hash_internal_pointer_reset(addobjarr); for(i=0; i<zend_hash_num_elements(addobjarr); i++) { char *key, addattribute[BUFFERLEN]; - pval *data; + zval *data, **dataptr; int noinsert=1; ulong ind; zend_hash_get_current_key(addobjarr, &key, &ind); - zend_hash_get_current_data(addobjarr, (void *) &data); + zend_hash_get_current_data(addobjarr, (void *) &dataptr); + data = *dataptr; switch(data->type) { case IS_STRING: if(strlen(data->value.str.val) > 0) { @@ -1542,12 +1545,13 @@ nr = zend_hash_num_elements(remobjarr); for(i=0; i<nr; i++) { char *key, remattribute[BUFFERLEN]; - pval *data; + zval *data, **dataptr; int noinsert=1; ulong ind; zend_hash_get_current_key(remobjarr, &key, &ind); - zend_hash_get_current_data(remobjarr, (void *) &data); + zend_hash_get_current_data(remobjarr, (void *) &dataptr); + data = *dataptr; switch(data->type) { case IS_STRING: if(strlen(data->value.str.val) > 0) {

« previous php.version4 (#3474) next »