Author: wrowe Date: Wed Mar 16 18:07:51 2005 New Revision: 157852 URL: http://svn.apache.org/viewcvs?view=rev&rev=157852 Log:
Update iconv_module to search APR_ICONV1_PATH, ensuring we don't collide with apr-iconv version 0.9.x flavor iconv modules (which weren't compatible.) This was particularly an issue when mixing flavors of subversion, apache and other apr-based apps when both 0.9 and 1.x are required. Reported by: Curt Arnold <carnold apache.org> Modified: apr/apr-iconv/trunk/CHANGES apr/apr-iconv/trunk/lib/api_version.c apr/apr-iconv/trunk/lib/iconv_module.c Modified: apr/apr-iconv/trunk/CHANGES URL: http://svn.apache.org/viewcvs/apr/apr-iconv/trunk/CHANGES?view=diff&r1=157851&r2=157852 ============================================================================== --- apr/apr-iconv/trunk/CHANGES (original) +++ apr/apr-iconv/trunk/CHANGES Wed Mar 16 18:07:51 2005 @@ -1,5 +1,10 @@ Changes with APR-ICONV 1.1 + *) APR_ICONV1_PATH distinguishes between our apr-iconv 0.9 and 1.x + flavors (changed pool arguments to several internal functions, so the + loadable charset modules are not binary compatible.) The older 0.9 + flavor APR_ICONV_PATH won't be searched. [William Rowe] + Changes with APR-ICONV 1.0.2 *) Fix libapriconv.rc for Win32 builds [William Rowe, Justin Erenkrantz] Modified: apr/apr-iconv/trunk/lib/api_version.c URL: http://svn.apache.org/viewcvs/apr/apr-iconv/trunk/lib/api_version.c?view=diff&r1=157851&r2=157852 ============================================================================== --- apr/apr-iconv/trunk/lib/api_version.c (original) +++ apr/apr-iconv/trunk/lib/api_version.c Wed Mar 16 18:07:51 2005 @@ -13,8 +13,6 @@ * limitations under the License. */ -#include "apr_general.h" /* for APR_STRINGIFY */ - #include "apr_iconv.h" #include "api_version.h" Modified: apr/apr-iconv/trunk/lib/iconv_module.c URL: http://svn.apache.org/viewcvs/apr/apr-iconv/trunk/lib/iconv_module.c?view=diff&r1=157851&r2=157852 ============================================================================== --- apr/apr-iconv/trunk/lib/iconv_module.c (original) +++ apr/apr-iconv/trunk/lib/iconv_module.c Wed Mar 16 18:07:51 2005 @@ -39,6 +39,7 @@ #include "apr_strings.h" #include "apr_tables.h" #include "apr_lib.h" +#include "api_version.h" #include <string.h> #include <stdlib.h> @@ -49,6 +50,8 @@ #include "charset_alias.h" #endif +#define APR_ICONV_PATH "APR_ICONV" API_STRINGIFY(API_MAJOR_VERSION) "_PATH" + static apr_status_t iconv_getpathname(char *buffer, const char *dir, const char *name, apr_pool_t *ctx) { @@ -93,7 +96,7 @@ while (0 != (*ptr++ = apr_tolower(*name++))) ; - if (!apr_env_get(&ptr, "APR_ICONV_PATH", subpool) + if (!apr_env_get(&ptr, APR_ICONV_PATH, subpool) && !apr_filepath_list_split(&pathelts, ptr, subpool)) { int i;