]> granicus.if.org Git - php/commitdiff
use the new TSRMLS_FETCH_FROM_CTX() macro
authorSterling Hughes <sterling@php.net>
Sun, 27 Apr 2003 22:15:19 +0000 (22:15 +0000)
committerSterling Hughes <sterling@php.net>
Sun, 27 Apr 2003 22:15:19 +0000 (22:15 +0000)
ext/curl/interface.c
ext/curl/php_curl.h

index 8c92ce46d2f16bf7bd1d600367d304de48fc091e..53dc06f56fadecbd0c659461614a7e67a040feae 100644 (file)
@@ -365,7 +365,7 @@ static size_t curl_write(char *data, size_t size, size_t nmemb, void *ctx)
        php_curl       *ch     = (php_curl *) ctx;
        php_curl_write *t      = ch->handlers->write;
        size_t          length = size * nmemb;
-       TSRMLS_FETCH();
+       TSRMLS_FETCH_FROM_CTX(ch->thread_ctx);
 
 #if PHP_CURL_DEBUG
        fprintf(stderr, "curl_write() called\n");
@@ -385,7 +385,6 @@ static size_t curl_write(char *data, size_t size, size_t nmemb, void *ctx)
                        zval *argv[2];
                        zval *retval;
                        int   error;
-                       TSRMLS_FETCH();
 
                        MAKE_STD_ZVAL(argv[0]);
                        MAKE_STD_ZVAL(argv[1]);
@@ -434,7 +433,7 @@ static size_t curl_read(char *data, size_t size, size_t nmemb, void *ctx)
                        zval *retval;
                        int   length;
                        int   error;
-                       TSRMLS_FETCH();
+                       TSRMLS_FETCH_FROM_CTX(ch->thread_ctx);
 
                        MAKE_STD_ZVAL(argv[0]);
                        MAKE_STD_ZVAL(argv[1]);
@@ -475,7 +474,7 @@ static size_t curl_write_header(char *data, size_t size, size_t nmemb, void *ctx
        php_curl       *ch  = (php_curl *) ctx;
        php_curl_write *t   = ch->handlers->write_header;
        size_t          length = size * nmemb;
-       TSRMLS_FETCH();
+       TSRMLS_FETCH_FROM_CTX(ch->thread_ctx);
        
        switch (t->method) {
                case PHP_CURL_STDOUT:
@@ -493,7 +492,6 @@ static size_t curl_write_header(char *data, size_t size, size_t nmemb, void *ctx
                        zval *argv[2];
                        zval *retval;
                        int   error;
-                       TSRMLS_FETCH();
 
                        MAKE_STD_ZVAL(argv[0]);
                        MAKE_STD_ZVAL(argv[1]);
@@ -533,7 +531,7 @@ static size_t curl_passwd(void *ctx, char *prompt, char *buf, int buflen)
        zval        *retval = NULL;
        int          error;
        int          ret = 0;
-       TSRMLS_FETCH();
+       TSRMLS_FETCH_FROM_CTX(ch->thread_ctx);
 
        MAKE_STD_ZVAL(argv[0]);
        MAKE_STD_ZVAL(argv[1]);
@@ -663,13 +661,14 @@ PHP_FUNCTION(curl_init)
        }
 
        alloc_curl_handle(&ch);
-
+       ch->thread_ctx = TSRMLS_C;
+       
        ch->cp = curl_easy_init();
        if (!ch->cp) {
                php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not initialize a new cURL handle");
                RETURN_FALSE;
        }
-
+       
        ch->handlers->write->method = PHP_CURL_STDOUT;
        ch->handlers->write->type   = PHP_CURL_ASCII;
        ch->handlers->read->method  = PHP_CURL_DIRECT;
index a1c6276ddada772cb3e9f97b3bb5d56e7211684e..7680f93dc3272148ce5cf25618463918c7287f76 100644 (file)
@@ -113,6 +113,7 @@ struct _php_curl_free {
 typedef struct {
        struct _php_curl_error   err;
        struct _php_curl_free    to_free;
+       void ***thread_ctx;
        CURL                    *cp;
        php_curl_handlers       *handlers;
        long                     id;