@@ -93,7 +93,8 @@ int swoole_curl_get_le_curl() {
93
93
int swoole_curl_get_le_curl_multi () {
94
94
return le_curl_multi_handle;
95
95
}
96
-
96
+ #else
97
+ extern zend_class_entry *curl_ce;
97
98
#endif
98
99
99
100
#define CAAL (s, v ) add_assoc_long_ex(return_value, s, sizeof (s) - 1 , (zend_long) v);
@@ -300,11 +301,11 @@ zend_class_entry *swoole_coroutine_curl_handle_ce;
300
301
zend_class_entry *curl_share_ce;
301
302
static zend_object_handlers swoole_coroutine_curl_handle_handlers;
302
303
303
- static zend_object *curl_create_object (zend_class_entry *class_type);
304
- static void curl_free_obj (zend_object *object);
305
- static HashTable *curl_get_gc (zend_object *object, zval **table, int *n);
306
- static zend_function *curl_get_constructor (zend_object *object);
307
- static zend_object *curl_clone_obj (zend_object *object);
304
+ static zend_object *swoole_curl_create_object (zend_class_entry *class_type);
305
+ static void swoole_curl_free_obj (zend_object *object);
306
+ static HashTable *swoole_curl_get_gc (zend_object *object, zval **table, int *n);
307
+ static zend_function *swoole_curl_get_constructor (zend_object *object);
308
+ static zend_object *swoole_curl_clone_obj (zend_object *object);
308
309
#endif
309
310
310
311
static inline int build_mime_structure_from_hash (php_curl *ch, zval *zpostfields);
@@ -316,18 +317,18 @@ void swoole_native_curl_minit(int module_number) {
316
317
SW_INIT_CLASS_ENTRY (
317
318
swoole_coroutine_curl_handle, " Swoole\\ Coroutine\\ Curl\\ Handle" , nullptr , " Co\\ Curl\\ Handle" , nullptr );
318
319
SW_SET_CLASS_SERIALIZABLE (swoole_coroutine_curl_handle, zend_class_serialize_deny, zend_class_unserialize_deny);
319
- SW_SET_CLASS_CUSTOM_OBJECT (swoole_coroutine_curl_handle, curl_create_object, curl_free_obj , php_curl, std);
320
+ SW_SET_CLASS_CUSTOM_OBJECT (swoole_coroutine_curl_handle, swoole_curl_create_object, swoole_curl_free_obj , php_curl, std);
320
321
swoole_coroutine_curl_handle_ce->ce_flags |= ZEND_ACC_FINAL | ZEND_ACC_NO_DYNAMIC_PROPERTIES;
321
- swoole_coroutine_curl_handle_handlers.get_gc = curl_get_gc;
322
- swoole_coroutine_curl_handle_handlers.get_constructor = curl_get_constructor;
323
- swoole_coroutine_curl_handle_handlers.clone_obj = curl_clone_obj;
322
+ swoole_coroutine_curl_handle_ce->parent = curl_ce;
323
+ swoole_coroutine_curl_handle_handlers.get_gc = swoole_curl_get_gc;
324
+ swoole_coroutine_curl_handle_handlers.get_constructor = swoole_curl_get_constructor;
325
+ swoole_coroutine_curl_handle_handlers.clone_obj = swoole_curl_clone_obj;
324
326
swoole_coroutine_curl_handle_handlers.cast_object = curl_cast_object;
325
327
326
328
curl_multi_register_class (nullptr );
327
329
328
330
zend_unregister_functions (swoole_native_curl_functions, -1 , CG (function_table));
329
331
zend_register_functions (NULL , swoole_native_curl_functions, NULL , MODULE_PERSISTENT);
330
-
331
332
#else
332
333
le_curl = zend_register_list_destructors_ex (swoole_curl_close, NULL , le_curl_name, module_number);
333
334
le_curl_multi_handle =
@@ -345,7 +346,7 @@ void swoole_native_curl_minit(int module_number) {
345
346
/* CurlHandle class */
346
347
347
348
#if PHP_VERSION_ID >= 80000
348
- static zend_object *curl_create_object (zend_class_entry *class_type) {
349
+ static zend_object *swoole_curl_create_object (zend_class_entry *class_type) {
349
350
php_curl *intern = (php_curl *) zend_object_alloc (sizeof (php_curl), class_type);
350
351
351
352
zend_object_std_init (&intern->std , class_type);
@@ -355,19 +356,19 @@ static zend_object *curl_create_object(zend_class_entry *class_type) {
355
356
return &intern->std ;
356
357
}
357
358
358
- static zend_function *curl_get_constructor (zend_object *object) {
359
+ static zend_function *swoole_curl_get_constructor (zend_object *object) {
359
360
zend_throw_error (NULL , " Cannot directly construct CurlHandle, use curl_init() instead" );
360
361
return NULL ;
361
362
}
362
363
363
- static zend_object *curl_clone_obj (zend_object *object) {
364
+ static zend_object *swoole_curl_clone_obj (zend_object *object) {
364
365
php_curl *ch;
365
366
CURL *cp;
366
367
zval *postfields;
367
368
zend_object *clone_object;
368
369
php_curl *clone_ch;
369
370
370
- clone_object = curl_create_object (curl_ce);
371
+ clone_object = swoole_curl_create_object (curl_ce);
371
372
clone_ch = curl_from_obj (clone_object);
372
373
swoole_curl_init_handle (clone_ch);
373
374
@@ -392,7 +393,7 @@ static zend_object *curl_clone_obj(zend_object *object) {
392
393
return &clone_ch->std ;
393
394
}
394
395
395
- static HashTable *curl_get_gc (zend_object *object, zval **table, int *n) {
396
+ static HashTable *swoole_curl_get_gc (zend_object *object, zval **table, int *n) {
396
397
php_curl *curl = curl_from_obj (object);
397
398
398
399
zend_get_gc_buffer *gc_buffer = zend_get_gc_buffer_create ();
@@ -2774,7 +2775,7 @@ static void _php_curl_free(php_curl *ch) {
2774
2775
}
2775
2776
2776
2777
#if PHP_VERSION_ID >= 80000
2777
- static void curl_free_obj (zend_object *object) {
2778
+ static void swoole_curl_free_obj (zend_object *object) {
2778
2779
php_curl *ch = curl_from_obj (object);
2779
2780
2780
2781
#if PHP_CURL_DEBUG
0 commit comments