- Make the output globals accessible from the outside world

- Fix Win32 compilation
This commit is contained in:
Zeev Suraski 2000-06-24 13:27:34 +00:00
parent ee5e330bcf
commit d1a6a64675
6 changed files with 65 additions and 40 deletions

View file

@ -70,6 +70,7 @@ static zval incomplete_class_get_property(zend_property_reference *property_refe
incomplete_class_message(property_reference);
/* does not reach this point */
memset(&foo, 0, sizeof(zval)); /* shut warnings up */
return (foo);
}

View file

@ -37,29 +37,9 @@ static void php_ob_prepend(const char *text, uint text_length);
static inline void php_ob_send(void);
typedef struct {
int (*php_body_write)(const char *str, uint str_length); /* string output */
int (*php_header_write)(const char *str, uint str_length); /* unbuffer string output */
char *ob_buffer;
uint ob_size;
uint ob_block_size;
uint ob_text_length;
unsigned char implicit_flush;
char *output_start_filename;
int output_start_lineno;
} php_output_globals;
#ifdef ZTS
#define OLS_D php_output_globals *output_globals
#define OLS_C output_globals
#define OG(v) (output_globals->v)
#define OLS_FETCH() php_output_globals *output_globals = ts_resource(output_globals_id)
int output_globals_id;
#else
#define OLS_D void
#define OLS_C
#define OG(v) (output_globals.v)
#define OLS_FETCH()
php_output_globals output_globals;
#endif

View file

@ -41,4 +41,32 @@ PHP_FUNCTION(ob_implicit_flush);
PHP_GINIT_FUNCTION(output);
typedef struct {
int (*php_body_write)(const char *str, uint str_length); /* string output */
int (*php_header_write)(const char *str, uint str_length); /* unbuffer string output */
char *ob_buffer;
uint ob_size;
uint ob_block_size;
uint ob_text_length;
unsigned char implicit_flush;
char *output_start_filename;
int output_start_lineno;
} php_output_globals;
#ifdef ZTS
#define OLS_D php_output_globals *output_globals
#define OLS_C output_globals
#define OG(v) (output_globals->v)
#define OLS_FETCH() php_output_globals *output_globals = ts_resource(output_globals_id)
ZEND_API extern int output_globals_id;
#else
#define OLS_D void
#define OLS_C
#define OG(v) (output_globals.v)
#define OLS_FETCH()
ZEND_API extern php_output_globals output_globals;
#endif
#endif /* _OUTPUT_BUFFER */

View file

@ -37,29 +37,9 @@ static void php_ob_prepend(const char *text, uint text_length);
static inline void php_ob_send(void);
typedef struct {
int (*php_body_write)(const char *str, uint str_length); /* string output */
int (*php_header_write)(const char *str, uint str_length); /* unbuffer string output */
char *ob_buffer;
uint ob_size;
uint ob_block_size;
uint ob_text_length;
unsigned char implicit_flush;
char *output_start_filename;
int output_start_lineno;
} php_output_globals;
#ifdef ZTS
#define OLS_D php_output_globals *output_globals
#define OLS_C output_globals
#define OG(v) (output_globals->v)
#define OLS_FETCH() php_output_globals *output_globals = ts_resource(output_globals_id)
int output_globals_id;
#else
#define OLS_D void
#define OLS_C
#define OG(v) (output_globals.v)
#define OLS_FETCH()
php_output_globals output_globals;
#endif

View file

@ -41,4 +41,32 @@ PHP_FUNCTION(ob_implicit_flush);
PHP_GINIT_FUNCTION(output);
typedef struct {
int (*php_body_write)(const char *str, uint str_length); /* string output */
int (*php_header_write)(const char *str, uint str_length); /* unbuffer string output */
char *ob_buffer;
uint ob_size;
uint ob_block_size;
uint ob_text_length;
unsigned char implicit_flush;
char *output_start_filename;
int output_start_lineno;
} php_output_globals;
#ifdef ZTS
#define OLS_D php_output_globals *output_globals
#define OLS_C output_globals
#define OG(v) (output_globals->v)
#define OLS_FETCH() php_output_globals *output_globals = ts_resource(output_globals_id)
ZEND_API extern int output_globals_id;
#else
#define OLS_D void
#define OLS_C
#define OG(v) (output_globals.v)
#define OLS_FETCH()
ZEND_API extern php_output_globals output_globals;
#endif
#endif /* _OUTPUT_BUFFER */

View file

@ -389,6 +389,10 @@ SOURCE=..\ext\standard\image.c
# End Source File
# Begin Source File
SOURCE=..\ext\standard\incomplete_class.c
# End Source File
# Begin Source File
SOURCE=..\ext\standard\info.c
# End Source File
# Begin Source File
@ -634,6 +638,10 @@ SOURCE=..\ext\odbc\php_odbc.h
# End Source File
# Begin Source File
SOURCE=..\ext\standard\php_output.h
# End Source File
# Begin Source File
SOURCE=..\ext\pcre\php_pcre.h
# End Source File
# Begin Source File