#include "php.h"
#include "phpstr.h"
-PHPSTR_API phpstr *phpstr_init_ex(phpstr *buf, size_t chunk_size, zend_bool pre_alloc)
+PHPSTR_API phpstr *phpstr_init_ex(phpstr *buf, size_t chunk_size, int pre_alloc)
{
if (!buf) {
buf = emalloc(sizeof(phpstr));
if (!chunk_size) {
phpstr_data(storage, chunk, &chunk_size);
- phpstr_free(&storage);
+ phpstr_free(s);
return chunk_size;
}
efree(chunk);
data = NULL;
data_len = 0;
+ if (!chunk_len) {
+ /* we already got the last chunk,
+ and freed all resources */
+ break;
+ }
}
}