Hi, I think, you are right. I will add them.
Thanks. Dmitry. > -----Original Message----- > From: Marcus Boerger [mailto:[EMAIL PROTECTED] > Sent: Tuesday, September 07, 2004 22:46 > To: Dmitry Stogov > Cc: [EMAIL PROTECTED] > Subject: Re: [PHP-CVS] cvs: php-src /ext/soap php_encoding.c > > > Hello Dmitry, > > that's missing a few lines: > > } else if ((c & 0xfc) == 0xf8) { > if ((s[i++] & 0xc0) != 0x80 || > (s[i++] & 0xc0) != 0x80 || (s[i++] & 0xc0) != 0x80 || (s[i++] > & 0xc0) != 0x80) { > return 0; > } > } else if ((c & 0xfe) == 0xfc) { > if ((s[i++] & 0xc0) != 0x80 || > (s[i++] & 0xc0) != 0x80 || (s[i++] & 0xc0) != 0x80 || (s[i++] > & 0xc0) != 0x80 || (s[i++] & 0xc0) != 0x80) { > return 0; > } > > regards > marcus > > > Tuesday, September 7, 2004, 4:34:46 PM, you wrote: > > > dmitry Tue Sep 7 10:34:46 2004 EDT > > > Modified files: > > /php-src/ext/soap php_encoding.c > > Log: > > Make ext/soap work around libxml2 bug in xmlCheckUTF8 > (2.6.7-2.6.13) > > > > > http://cvs.php.net/diff.php/php-src/ext/soap/php_encoding.c?r1=1.74&r2 > > =1.75&ty=u > > Index: php-src/ext/soap/php_encoding.c > > diff -u php-src/ext/soap/php_encoding.c:1.74 > > php-src/ext/soap/php_encoding.c:1.75 > > --- php-src/ext/soap/php_encoding.c:1.74 Thu Aug 26 14:40:10 2004 > > +++ php-src/ext/soap/php_encoding.c Tue Sep 7 10:34:46 2004 > > @@ -17,7 +17,7 @@ > > | Dmitry Stogov <[EMAIL PROTECTED]> > > > > > > +------------------------------------------------------------- > ---------+ > > */ > > -/* $Id: php_encoding.c,v 1.74 2004/08/26 18:40:10 dmitry Exp $ */ > > +/* $Id: php_encoding.c,v 1.75 2004/09/07 14:34:46 dmitry Exp $ */ > > > #include <time.h> > > > @@ -581,6 +581,32 @@ > > return ret; > > } > > > +static int php_soap_xmlCheckUTF8(const unsigned char *s) > > +{ > > + int i; > > + unsigned char c; > > + > > + for (i = 0; (c = s[i++]);) { > > + if ((c & 0x80) == 0) { > > + } else if ((c & 0xe0) == 0xc0) { > > + if ((s[i++] & 0xc0) != 0x80) { > > + return 0; > > + } > > + } else if ((c & 0xf0) == 0xe0) { > > + if ((s[i++] & 0xc0) != 0x80 || (s[i++] > & 0xc0) != 0x80) { > > + return 0; > > + } > > + } else if ((c & 0xf8) == 0xf0) { > > + if ((s[i++] & 0xc0) != 0x80 || (s[i++] > & 0xc0) != 0x80 || (s[i++] & 0xc0) != 0x80) { > > + return 0; > > + } > > + } else { > > + return 0; > > + } > > + } > > + return 1; > > +} > > + > > static xmlNodePtr to_xml_string(encodeTypePtr type, zval > *data, int > > style, xmlNodePtr parent) { > > xmlNodePtr ret; > > @@ -612,12 +638,12 @@ > > efree(str); > > str = estrdup(xmlBufferContent(out)); > > new_len = n; > > - } else if (!xmlCheckUTF8(str)) { > > + } else if (!php_soap_xmlCheckUTF8(str)) { > > soap_error1(E_ERROR, "Encoding: string > '%s' is not a valid utf-8 string", str); > > } > > xmlBufferFree(out); > > xmlBufferFree(in); > > - } else if (!xmlCheckUTF8(str)) { > > + } else if (!php_soap_xmlCheckUTF8(str)) { > > soap_error1(E_ERROR, "Encoding: string '%s' is > not a valid utf-8 string", str); > > } > > > > > > -- > Best regards, > Marcus mailto:[EMAIL PROTECTED] > > -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php