AT> Hi!
AT>
AT> alr> + if(GLOBAL(php3_rqst)->codep && GLOBAL(php3_rqst)->codep->cp_otabl)
AT> Виктор, так оно не сработает. cp_otabl теперь называется cp_otabl_ptr
Естественно не сработает :)
AT> (по той причине, что ее содержимое поменялось и единственный удобный способ
AT> отловить все случаи использования - переименовать переменную).
Решение правильное.
AT> Интересно, как у вас оно собралось ?
AT>
А так и собралось -- я просто по ошибке не тот патч кинул :( Дело было поздно,
я спать хотел, и кинул по ошибке старый patch. Естествнно, что в .rpm'е все Ok
(так как получить .rpm с кривыми patch'ами можно, но только если задаться такой
целью, а вообще .rpm собирается только после успешной компиляции :) Так что вот
повтор:
--- config.h.in Sun Dec 21 22:47:37 1997
+++ config.h.in Sun Dec 21 23:12:20 1997
@@ -132,6 +132,9 @@
/* Define if you are compiling PHP as an Apache module */
#define APACHE 0
+/* Since we are using *Russian* Apache we need this */
+#define USE_TRANSFER_TABLES 1
+
#define HAVE_SYBASE 0
#define HAVE_SYBASE_CT 0
--- main.c Mon Dec 8 02:10:43 1997
+++ main.c Sun Dec 21 23:10:14 1997
@@ -168,7 +168,18 @@
va_start(args, format);
#if APACHE
+#ifndef USE_TRANSFER_TABLES
ret = vbprintf(GLOBAL(php3_rqst)->connection->client, format, args);
+#else
+ /* working copy of format again, see rputs's comment */
+ if(GLOBAL(php3_rqst)->codep && GLOBAL(php3_rqst)->codep->cp_otabl_ptr)
+ ret=charset_vbprintf(GLOBAL(php3_rqst)->connection->client,
+ GLOBAL(php3_rqst)->codep->cp_otabl_ptr,
+ GLOBAL(php3_rqst)->codep->cp_flags, format, args);
+ else
+ ret=charset_vbprintf(GLOBAL(php3_rqst)->connection->client,
+ NULL, 0, format, args);
+#endif
#endif
#if PHP_ISAPI
@@ -247,7 +258,18 @@
va_start(args, format);
#if APACHE
if (GLOBAL(php3_rqst)) {
+#ifndef USE_TRANSFER_TABLES
vbprintf(GLOBAL(php3_rqst)->connection->client, format, args);
+#else
+ /* working copy of format again, see rputs's comment */
+ if(GLOBAL(php3_rqst)->codep && GLOBAL(php3_rqst)->codep->cp_otabl_ptr)
+ charset_vbprintf(GLOBAL(php3_rqst)->connection->client,
+ GLOBAL(php3_rqst)->codep->cp_otabl_ptr,
+ GLOBAL(php3_rqst)->codep->cp_flags, format, args);
+ else
+ charset_vbprintf(GLOBAL(php3_rqst)->connection->client,
+ NULL, 0, format, args);
+#endif
if (!(type & E_CORE)) {
rprintf(GLOBAL(php3_rqst), " in <b>%s</b> on line <b>%d</b>", filename, GLOBAL(current_lineno) % MAX_TOKENS_PER_CACHE);
}
"Russian Apache" includes software developed
by the Apache Group for use in the Apache HTTP server project
(http://www.apache.org/) See
Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C)
1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.