Re: cvs: php4 /ext/fribidi config.m4 fribidi.c php_fribidi.h
| From: | derick@php.net | Date: | Sun, 15 Sep 2002 10:48:07 +0000 |
| Subject: | Re: cvs: php4 /ext/fribidi config.m4 fribidi.c php_fribidi.h | ||
| References: | 1 | Groups: | php.cvs |
| Request: | Send a blank email to php-cvs+get-14058@lists.php.net to get a copy of this message | ||
Hey Tal,
maybe you can build-in a check that atleast version 0.10.0 is used...
Derick
On Sun, 15 Sep 2002, Tal Peer wrote:
> tal Sun Sep 15 05:32:29 2002 EDT
>
> Modified files:
> /php4/ext/fribidi config.m4 php_fribidi.h fribidi.c
> Log:
> *Fixed compilation errors and enhanced the code
>
>
> Index: php4/ext/fribidi/config.m4
> diff -u php4/ext/fribidi/config.m4:1.8 php4/ext/fribidi/config.m4:1.9
> --- php4/ext/fribidi/config.m4:1.8 Tue Mar 12 11:18:13 2002
> +++ php4/ext/fribidi/config.m4 Sun Sep 15 05:32:29 2002
> @@ -1,5 +1,5 @@
> dnl
> -dnl $Id: config.m4,v 1.8 2002/03/12 16:18:13 sas Exp $
> +dnl $Id: config.m4,v 1.9 2002/09/15 09:32:29 tal Exp $
> dnl
>
> PHP_ARG_WITH(fribidi, for FriBidi support,
> @@ -36,10 +36,10 @@
>
> dnl check for glib header files
>
> - AC_MSG_CHECKING([for glibconfig.h in "usr/lib/glib/include/"])
> - if test -f /usr/lib/glib/include/glibconfig.h ; then
> + AC_MSG_CHECKING([for glib header files])
> + if test -f
which glib-config ; then
> AC_MSG_RESULT([found])
> - GLIB_INCDIR=/usr/lib/glib/include/
> + GLIB_INCDIR=glib-config --cflags
> else
> AC_MSG_RESULT([missing])
> fi
> @@ -67,7 +67,7 @@
> AC_MSG_RESULT([yes])
>
> PHP_ADD_INCLUDE("$FRIBIDI_INCDIR")
> - PHP_ADD_INCLUDE("$GLIB_INCDIR")
> + PHP_EVAL_INCLINE("$GLIB_INCDIR")
> PHP_ADD_LIBRARY_WITH_PATH(fribidi,"$FRIBIDI_LIBDIR", FRIBIDI_SHARED_LIBADD)
>
> AC_DEFINE(HAVE_FRIBIDI, 1, [ ])
> Index: php4/ext/fribidi/php_fribidi.h
> diff -u php4/ext/fribidi/php_fribidi.h:1.8 php4/ext/fribidi/php_fribidi.h:1.9
> --- php4/ext/fribidi/php_fribidi.h:1.8 Mon Sep 9 05:44:52 2002
> +++ php4/ext/fribidi/php_fribidi.h Sun Sep 15 05:32:29 2002
> @@ -23,6 +23,7 @@
>
> #include "fribidi.h"
> #include "../standard/info.h"
> +#include <glib.h>
>
> extern zend_module_entry fribidi_module_entry;
> #define phpext_fribidi_ptr &fribidi_module_entry
> Index: php4/ext/fribidi/fribidi.c
> diff -u php4/ext/fribidi/fribidi.c:1.14 php4/ext/fribidi/fribidi.c:1.15
> --- php4/ext/fribidi/fribidi.c:1.14 Thu Aug 15 17:43:41 2002
> +++ php4/ext/fribidi/fribidi.c Sun Sep 15 05:32:29 2002
> @@ -16,7 +16,7 @@
> +----------------------------------------------------------------------+
> */
>
> -/* $Id: fribidi.c,v 1.14 2002/08/15 21:43:41 zeev Exp $ */
> +/* $Id: fribidi.c,v 1.15 2002/09/15 09:32:29 tal Exp $ */
>
> #ifdef HAVE_CONFIG_H
> #include "config.h"
> @@ -134,8 +134,8 @@
>
> FriBidiCharType base_dir;
>
> - guint16 *position_L_to_V_list;
> - guint16 *position_V_to_L_list;
> + FriBidiStrIndex *position_L_to_V_list;
> + FriBidiStrIndex *position_V_to_L_list;
> guint8 *embedding_level_list;
>
> /* get parameters from input */
> @@ -162,8 +162,8 @@
> u_logical_str = (FriBidiChar*) emalloc(sizeof(FriBidiChar)*alloc_len);
> u_visual_str = (FriBidiChar*) emalloc(sizeof(FriBidiChar)*alloc_len);
>
> - position_L_to_V_list = (guint16*) emalloc(sizeof(guint16)*alloc_len);
> - position_V_to_L_list = (guint16*) emalloc(sizeof(guint16)*alloc_len);
> + position_L_to_V_list = (FriBidiStrIndex*) emalloc(sizeof(FriBidiStrIndex)*alloc_len);
> + position_V_to_L_list = (FriBidiStrIndex*) emalloc(sizeof(FriBidiStrIndex)*alloc_len);
> embedding_level_list = (guint8*) emalloc(sizeof(guint8)*alloc_len);
>
> outString = (guchar*)emalloc(sizeof(guchar)*alloc_len);
> @@ -174,25 +174,32 @@
>
> switch(Z_LVAL_PP(parameter3)) {
> case FRIBIDI_CHARSET_UTF8:
> - utf8_len=fribidi_utf8_to_unicode(inString, u_logical_str);
> + utf8_len=fribidi_utf8_to_unicode(inString, len, u_logical_str);
> break;
> case FRIBIDI_CHARSET_ISO8859_6:
> - fribidi_iso8859_6_to_unicode(inString, u_logical_str);
> + fribidi_iso8859_6_to_unicode(inString, len, u_logical_str);
> break;
> case FRIBIDI_CHARSET_ISO8859_8:
> - fribidi_iso8859_8_to_unicode(inString, u_logical_str);
> + fribidi_iso8859_8_to_unicode(inString, len, u_logical_str);
> break;
> case FRIBIDI_CHARSET_CP1255:
> - fribidi_cp1255_to_unicode(inString, u_logical_str);
> + fribidi_cp1255_to_unicode(inString, len, u_logical_str);
> break;
> case FRIBIDI_CHARSET_CP1256:
> - fribidi_cp1256_to_unicode(inString, u_logical_str);
> + fribidi_cp1256_to_unicode(inString, len, u_logical_str);
> break;
> case FRIBIDI_CHARSET_ISIRI_3342:
> - fribidi_isiri_3342_to_unicode(inString, u_logical_str);
> + fribidi_isiri_3342_to_unicode(inString, len, u_logical_str);
> break;
> default:
> - zend_error(E_ERROR,"unknown character set %d<br />",
> Z_LVAL_PP(parameter3));
> + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Unknown charset");
> + efree(u_logical_str);
> + efree(u_visual_str);
> + efree(position_L_to_V_list);
> + efree(position_V_to_L_list);
> + efree(embedding_level_list);
> + efree(outString);
> + RETURN_FALSE;
> }
>
>
>
>
>
> --
> PHP CVS Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
---------------------------------------------------------------------------
Did I help you? http://www.derickrethans.nl/link.php?url=giftlist
Frequent ranting: http://www.derickrethans.nl/
---------------------------------------------------------------------------
PHP: Scripting the Web - derick@php.net
All your branches are belong to me!
SRM: Script Running Machine - www.vl-srm.net
---------------------------------------------------------------------------