cvs: php4 /sapi/caudium caudium.c
| From: | David Hedbor | Date: | Thu, 02 Nov 2000 20:05:24 +0000 |
| Subject: | cvs: php4 /sapi/caudium caudium.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-2429@lists.php.net to get a copy of this message | ||
neotron Thu Nov 2 12:05:24 2000 EDT
Modified files:
/php4/sapi/caudium caudium.c
Log:
Now correctly detects Pike 7.0 and use the alternative code. It also sends the
number of written bytes to the done callback function.
Index: php4/sapi/caudium/caudium.c
diff -u php4/sapi/caudium/caudium.c:1.1 php4/sapi/caudium/caudium.c:1.2
--- php4/sapi/caudium/caudium.c:1.1 Thu Nov 2 10:53:47 2000
+++ php4/sapi/caudium/caudium.c Thu Nov 2 12:05:24 2000
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: caudium.c,v 1.1 2000/11/02 18:53:47 neotron Exp $ */
+/* $Id: caudium.c,v 1.2 2000/11/02 20:05:24 neotron Exp $ */
#include "php.h"
#ifdef HAVE_CAUDIUM
@@ -52,6 +52,7 @@
#include <threads.h>
#include <builtin_functions.h>
#include <operators.h>
+#include <version.h>
#ifndef ZTS
/* Need thread safety */
@@ -76,6 +77,7 @@
struct svalue done_cb;
struct pike_string *filename;
int my_fd;
+ int written;
SLS_D;
} php_caudium_request;
@@ -260,11 +262,11 @@
case EWOULDBLOCK:
continue;
}
-
} else {
sent_bytes += written;
}
}
+ THIS->written += sent_bytes;
} else {
THREAD_SAFE_RUN(sent_bytes = php_caudium_low_ub_write(str, str_length),
"write");
@@ -424,7 +426,7 @@
{
/* char buf[512]; */
php_info_print_table_start();
- php_info_print_table_row(2, "SAPI module version", "$Id: caudium.c,v 1.1
2000/11/02 18:53:47 neotron Exp $");
+ php_info_print_table_row(2, "SAPI module version", "$Id: caudium.c,v 1.2
2000/11/02 20:05:24 neotron Exp $");
/* php_info_print_table_row(2, "Build date", Ns_InfoBuildDate());
php_info_print_table_row(2, "Config file path", Ns_InfoConfigFile());
php_info_print_table_row(2, "Error Log path", Ns_InfoErrorLog());
@@ -577,7 +579,7 @@
// current_thread = th_self();
mt_lock(&interpreter_lock);
init_interpreter();
-#if __MAJOR__ == 7 && __MINOR__ < 1
+#if PIKE_MAJOR_VERSION == 7 && PIKE_MINOR_VERSION < 1
Pike_stack_top=((char *)&state)+ (thread_stack_size-16384) * STACK_DIRECTION;
recoveries = NULL;
thread_id = low_clone(thread_id_prog);
@@ -651,7 +653,7 @@
file_handle.type = ZEND_HANDLE_FILENAME;
file_handle.filename = THIS->filename->str;
file_handle.free_filename = 0;
-
+ THIS->written = 0;
res = php_request_startup(CLS_C ELS_CC PLS_CC SLS_CC);
if(res == FAILURE) {
@@ -666,14 +668,15 @@
php_execute_script(&file_handle CLS_CC ELS_CC PLS_CC);
php_request_shutdown(NULL);
THREAD_SAFE_RUN({
- apply_svalue(&THIS->done_cb, 0);
+ push_int(THIS->written);
+ apply_svalue(&THIS->done_cb, 1);
pop_stack();
free_struct(SLS_C);
}, "positive run response");
}
mt_lock(&interpreter_lock);
SWAP_IN_CURRENT_THREAD();
-#if __MAJOR__ == 7 && __MINOR__ < 1
+#if PIKE_MAJOR_VERSION == 7 && PIKE_MINOR_VERSION < 1
OBJ2THREAD(thread_id)->status=THREAD_EXITED;
co_signal(& OBJ2THREAD(thread_id)->status_change);
thread_table_delete(thread_id);