Date: Tue, 22 May 2007 10:44:19 GMT From: Simun Mikecin<numisemis@yahoo.com> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/112858: [fix] databases/php5-oci8 broken since 5.2.2 Message-ID: <200705221044.l4MAiJGH065353@www.freebsd.org> Resent-Message-ID: <200705221050.l4MAo1V1005942@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 112858 >Category: ports >Synopsis: [fix] databases/php5-oci8 broken since 5.2.2 >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Tue May 22 10:50:01 GMT 2007 >Closed-Date: >Last-Modified: >Originator: Simun Mikecin >Release: 6.2-RELEASE >Organization: >Environment: FreeBSD plasma.logos.hr 6.2-RELEASE-p2 FreeBSD 6.2-RELEASE-p2 #0: Mon Mar 5 10:23:07 CET 2007 root@plasma.logos.hr:/usr/obj/usr/src.6.2/sys/PLASMA i386 >Description: Since PHP got upgraded to 5.2.2 this port is broken (compilation fails). This is because of using a feature of Oracle OCI that is not supported by the version we use on FreeBSD (oracle8-client port) regarding finding maximum number of bytes per characted for particular OCI session. To be on the safe side this patch always returnes 4 as maximum number of bytes per character. This should be sufficient for all encodings that I know of. >How-To-Repeat: try installing or upgrading to php5-oci8 port version 5.2.2. >Fix: Patch attached with submission follows: diff -urN php5-oci8.orig/files/patch-oci8_lob.c php5-oci8/files/patch-oci8_lob.c --- php5-oci8.orig/files/patch-oci8_lob.c Thu Jan 1 01:00:00 1970 +++ php5-oci8/files/patch-oci8_lob.c Tue May 22 12:34:09 2007 @@ -0,0 +1,20 @@ +--- oci8_lob.c.orig Thu Mar 29 11:33:03 2007 ++++ oci8_lob.c Tue May 22 12:33:23 2007 +@@ -301,6 +301,7 @@ + } + + if (is_clob) { ++#ifdef OCI_NLS_CHARSET_MAXBYTESZ + PHP_OCI_CALL_RETURN(connection->errcode, OCINlsNumericInfoGet, (connection->env, connection->err, &bytes_per_char, OCI_NLS_CHARSET_MAXBYTESZ)); + + if (connection->errcode != OCI_SUCCESS) { +@@ -308,6 +309,9 @@ + PHP_OCI_HANDLE_ERROR(connection, connection->errcode); + return 1; + } ++#else ++ bytes_per_char = 4; ++#endif + } else { + /* BLOBs don't have encoding, so bytes_per_char == 1 */ + } >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200705221044.l4MAiJGH065353>