back to dev
[m6w6/ext-http] / php_http_buffer.c
index 8ccee0847584b0e4f678596105ccfee8a5915251..e24a4e18baa2e4d7e7a6c8cbdbf7d7c7967fc31b 100644 (file)
@@ -45,7 +45,7 @@ PHP_HTTP_BUFFER_API size_t php_http_buffer_resize_ex(php_http_buffer_t *buf, siz
 {
        char *ptr = NULL;
 #if 0
-       fprintf(stderr, "RESIZE: len=%lu, size=%lu, used=%lu, free=%lu\n", len, buf->size, buf->used, buf->free);
+       fprintf(stderr, "RESIZE: len=%lu, size=%lu, used=%lu, free=%lu, total=%lu\n", len, buf->size, buf->used, buf->free, buf->free+buf->used);
 #endif
        if (buf->free < len) {
                size_t size = override_size ? override_size : buf->size;
@@ -74,10 +74,7 @@ PHP_HTTP_BUFFER_API size_t php_http_buffer_resize_ex(php_http_buffer_t *buf, siz
 
 PHP_HTTP_BUFFER_API char *php_http_buffer_account(php_http_buffer_t *buf, size_t to_account)
 {
-       /* it's probably already too late but check anyway */
-       if (to_account > buf->free) {
-               return NULL;
-       }
+       assert(to_account <= buf->free);
 
        buf->free -= to_account;
        buf->used += to_account;
@@ -229,7 +226,7 @@ PHP_HTTP_BUFFER_API size_t php_http_buffer_chunked_output(php_http_buffer_t **s,
 
        while ((got = php_http_buffer_chunk_buffer(s, data, data_len, &chunk, chunk_len))) {
                if (PHP_HTTP_BUFFER_PASS0 == passout(opaque, chunk, got TSRMLS_CC)) {
-                       STR_SET(chunk, NULL);
+                       PTR_SET(chunk, NULL);
                        return PHP_HTTP_BUFFER_PASS0;
                }
                ++passed;
@@ -240,9 +237,9 @@ PHP_HTTP_BUFFER_API size_t php_http_buffer_chunked_output(php_http_buffer_t **s,
                }
                data = NULL;
                data_len = 0;
-               STR_SET(chunk, NULL);
+               PTR_SET(chunk, NULL);
        }
-       STR_FREE(chunk);
+       PTR_FREE(chunk);
        return passed;
 }