Index: ext/session/session.c =================================================================== RCS file: /repository/php-src/ext/session/session.c,v retrieving revision 1.408 diff -u -r1.408 session.c --- ext/session/session.c 10 Feb 2005 20:22:07 -0000 1.408 +++ ext/session/session.c 11 Feb 2005 21:28:43 -0000 @@ -990,7 +990,9 @@ } return; } - + + PS(cookie_sent) = 1; + smart_str_appends(&ncookie, COOKIE_SET_COOKIE); smart_str_appends(&ncookie, PS(session_name)); smart_str_appendc(&ncookie, '='); @@ -1067,7 +1069,7 @@ { int module_number = PS(module_number); - if (PS(use_cookies)) { + if (PS(use_cookies) && !PS(cookie_sent)) { php_session_send_cookie(TSRMLS_C); } @@ -1745,6 +1747,8 @@ { php_rinit_session_globals(TSRMLS_C); + PS(cookie_sent) = 0; + if (PS(mod) == NULL) { char *value; Index: ext/session/php_session.h =================================================================== RCS file: /repository/php-src/ext/session/php_session.h,v retrieving revision 1.98 diff -u -r1.98 php_session.h --- ext/session/php_session.h 23 Jan 2004 03:28:58 -0000 1.98 +++ ext/session/php_session.h 11 Feb 2005 21:28:44 -0000 @@ -122,6 +122,7 @@ long hash_func; long hash_bits_per_character; int send_cookie; + int cookie_sent; int define_sid; } php_ps_globals;