diff options
author | 2012-09-16 11:06:11 +0000 | |
---|---|---|
committer | 2012-09-16 11:06:11 +0000 | |
commit | c1364346035cc67b746aafa09289dcfaca12132a (patch) | |
tree | 5e542acb73a4958729da9e47ef77dc1274425ae5 /www-client/elinks | |
parent | Version bump to 1.5.1 (diff) | |
download | historical-c1364346035cc67b746aafa09289dcfaca12132a.tar.gz historical-c1364346035cc67b746aafa09289dcfaca12132a.tar.bz2 historical-c1364346035cc67b746aafa09289dcfaca12132a.zip |
Fix build against ruby, bug #424789 by tman and patch by Ian Abbott.
Package-Manager: portage-2.1.11.17/cvs/Linux x86_64
Diffstat (limited to 'www-client/elinks')
-rw-r--r-- | www-client/elinks/ChangeLog | 6 | ||||
-rw-r--r-- | www-client/elinks/Manifest | 13 | ||||
-rw-r--r-- | www-client/elinks/elinks-0.12_pre5-r2.ebuild | 11 | ||||
-rw-r--r-- | www-client/elinks/files/elinks-0.12_pre5-ruby-1.9.patch | 187 |
4 files changed, 208 insertions, 9 deletions
diff --git a/www-client/elinks/ChangeLog b/www-client/elinks/ChangeLog index 0367f1052652..f41e1db1cc58 100644 --- a/www-client/elinks/ChangeLog +++ b/www-client/elinks/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for www-client/elinks # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/elinks/ChangeLog,v 1.144 2012/07/04 18:45:08 axs Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-client/elinks/ChangeLog,v 1.145 2012/09/16 11:06:11 pacho Exp $ + + 16 Sep 2012; Pacho Ramos <pacho@gentoo.org> + +files/elinks-0.12_pre5-ruby-1.9.patch, elinks-0.12_pre5-r2.ebuild: + Fix build against ruby, bug #424789 by tman and patch by Ian Abbott. 04 Jul 2012; Ian Stakenvicius <axs@gentoo.org> elinks-0.12_pre5-r2.ebuild, +files/elinks-0.12_pre5-ruby-config.patch: diff --git a/www-client/elinks/Manifest b/www-client/elinks/Manifest index 3aa3754fa0f4..3f510e3dea5d 100644 --- a/www-client/elinks/Manifest +++ b/www-client/elinks/Manifest @@ -8,21 +8,22 @@ AUX elinks-0.11.2-lua-5.patch 2125 SHA256 4e0f7b622111696e52e15745d8ac35249a95de AUX elinks-0.11.3-lua-5.patch 1841 SHA256 f04d11e01824fb2cf4387b87cd531d64ad280d21e9bcb57e461ace56419d1220 SHA512 58fd0477c39bedaf38a7ea632df38483a760b460ac8a70afec5c6449d39bb14db91616ba31bcb45cd247e3b5e880099d7ce6bd4cbba754a416fb5e62994b2e31 WHIRLPOOL 24942289c278b4e0958bb316f881d684a1864c27f1b073a118c20179944ce8a560d27d1aa0115ddd498e181d1caed2b5885771338e871d82d2393c2947ad057d AUX elinks-0.11.5-makefile.patch 1109 SHA256 5b37be9328b80b9a995de94cf0a053ad63d43a2e0550df6e0c5a4cdc94276e1f SHA512 f26ccefcc4ed3e9fe2e7e7de3d89479a25fe3bc823a489fc38df3fda0f5d784111500b69d42083e7f741466b4c33a549545c59ceec9311903c9d5e440e890103 WHIRLPOOL 9dfd3aea78b3aeafce69d6c0b2599ad46ca7cd2bd9bcb8d55f181b291411dc54f6f98a0eb71b4cfa2c92f33620bdfe15982536f350c7fdd724d7790e95c1e913 AUX elinks-0.12_pre5-compilation-fix.patch 464 SHA256 984c3e1127c18eb0925fbe1cca5bb2a7b214c6cd082db434e8fe37e082715e7e SHA512 7c1232f4f15579f8073cdea7397e4a34d5bec51268eb61cdff854f221615b027c385b81871e7b5fbefeda1ddf5de3008719724b9853798bc198866a25c8840fe WHIRLPOOL 1a3303d1ed36429bf47b4a1e55a87917d3fe20417f218999c1a02a90c199b4a1dc914a674c86fce8c62cb5cb3ab11019c2547de8c9cb44fe5660f2673b706062 +AUX elinks-0.12_pre5-ruby-1.9.patch 7131 SHA256 4274a6434c42b669fbee9e75a79bd02c33d50472bbb8e1c2ea441b3d2eae20de SHA512 41f8b34f9666740fbadffc4e47467670c7766f3b8612933a08cc6febe975f9453c21c393a43927c11ffe7ef6e0875ef09e125c80e84caa9f0917f864cb1d35e6 WHIRLPOOL 691d259ea49b1a859680b245a383fcf1da79626e848fb35489bdfa787c0fe0c99405610a10a03dbdde7847a838e8ac060c37136b8f71ce73751449afd7b293fa AUX elinks-0.12_pre5-ruby-config.patch 554 SHA256 ad8dd39bf4cf9aca5b1dfa1d092972c4fd3f3bd1612b67817d86228e19e8a868 SHA512 0c56d456dfbd6a60a85c062eff09f1eefd8ec72dbac26c3c8a1141ebb06562a4457e9d9f12ccbf17eb559e44e9120d2c31b8cda40519045b7f50ab579646bd29 WHIRLPOOL 6c629626f167cd02f1fd9e07006d0232abce5e3c1d58e97da3509d92b295228f09ef11a5ae049eb830f03bebd5f8c917b97739b082421963dc484841b3ddeaa9 AUX elinks-0.12_pre5-sm185-jsval-fixes.patch 3921 SHA256 d59f9e97f5d495803e0ac35726bf42592a8f726c2367fbc08b8fe9de79de4a2f SHA512 62a96d53b529c409d81094899c75cd7943176628e2b7301a005c6ebf9f660e813fbf1f3df213c43148d425e933208f761090b23b6ae75da93a93b13a1e924a34 WHIRLPOOL 03ae46d5a9497ac81db5cca364aa6cda4bfb3dc5864482e11778dfef752ae4c76a374026fafa3e2507c9626c528b483bd68a3277647b4c200de95197507fefa5 AUX elinks-0.12pre5-spidermonkey-callback.patch 513 SHA256 14b65ba92e8693105945d20de6e8f07ec946f17fbbf5248b4f8c431a92b88982 SHA512 81a2397b90531db291526fed738fd3661362c3d20c4bc330f909375cea3779f32f4286c8c43700bf7c19d6eb177e97acb3c32f15abba052651ee5b947f3bec43 WHIRLPOOL 224e95b0f09c61de04c1b6e9845a56ca94ee5c99fb90a7c9e57800c1cede50658091d7b1b3a7aec5a0bad9b7eff2e5ca4a1f7a107381bf8208b08e1624661f3d DIST elinks-0.10.4.conf.bz2 5370 SHA256 cb0fcd10cc592697de5d8d9358447a770d2b4613b17b629c0f0e05965baa6209 SHA512 defdc743d78f9620eac60f4cfc1c07ecc6d18d1d771899b6eec184bea818d612ef110219127284a5b7c53ca07746fc90fbeb97344b3aef7f1f894ed839443296 WHIRLPOOL c6dd65a281a0f48461ddac18e9981c029acd4906a294a02cfcf40429a18b443dee92a7c3317e704dc61fb519df3fa80da14c49a3f138640e223b64372669aa3a -DIST elinks-0.11.7.tar.bz2 2467915 RMD160 2e6e863d08f9accb71892ba6f236f795c83cba9c SHA1 d13edc1477d0ab32cafe7d3c1f3a23ae1c0a5c54 SHA256 456db6f704c591b1298b0cd80105f459ff8a1fc07a0ec1156a36c4da6f898979 +DIST elinks-0.11.7.tar.bz2 2467915 SHA256 456db6f704c591b1298b0cd80105f459ff8a1fc07a0ec1156a36c4da6f898979 DIST elinks-0.12_pre5-js185-patches.tar.bz2 13820 SHA256 64f7c4a657128983d054bd0d2027e11facd42fcc86bd8dfdf5b27ffbacbd54c8 SHA512 1552aeacdecb0a2db357402e0474d6b4810c767609d1d399b3350a4bcdc21ba9c0bde5a5d0bffd1d7b27d41ac46e3e85ae2527d715a1645a2dd51ab14b8eab3c WHIRLPOOL e6f7746407cd6654c19d4bc71dc4d0fd63070a78f7bc7c43f11f6e388268de963748597b0a2fd03cd22632651800b990ec0819d54799be9bfc4589332e11dbdd DIST elinks-0.12pre5.tar.bz2 2783523 SHA256 2d19547831098acff0c5f97f9fbc7912240f122961fd49fb8b76738417dd24d2 SHA512 d731d58d97a3d96f099a92c91d378983278cf1699961ae1790d57c78d671618eb3e37845b0fbd3d73d3ab5df2d590b9fd2cff5b3357a79f29a25f31cd4f38081 WHIRLPOOL e6e6f00c58fbbd42a273d729da4b5ae5c1d0398ac3affa6a98bec41364d8c48e4048167ab0be61a563f1eea00a50f98364beb262ccc68eebb181e2d9e11bb3fb EBUILD elinks-0.11.7.ebuild 4358 SHA256 2824d95dc5f12044a82a944c506dea477e1db14ed3d370062c23284b8e6a4bd4 SHA512 b41e2a0bcbc6eacf19b7435955b57fef0c21d8fd0817f4358cd7c3b6e81cdaac5acc80e788bf5fd955cf1bff6e6f472cc0d1183b73215399d289ecf1a528c84e WHIRLPOOL 83963d82bc0e494d383e0a0341a3b76a6288fa7d92eb6bfe99ebfc3e119ba025bc9c7d7cdd0c4a55779bb77b1b5c387093e7ba433eefa22cac4af89e818b9573 -EBUILD elinks-0.12_pre5-r2.ebuild 5217 SHA256 eab0b39016d34bbb2069954b2d2260c10ee03c5a9558b62a99865a9bf8efe989 SHA512 7d188edff4daf9070dc16812dfd38536c3a6b56490ef3e7979781d0979df7872977297d23e0e961cce9cf6bb83614e5e74352bc8622ca5cbd54202686b2bca0f WHIRLPOOL 80c33e9bac29ca29e500b277d7ccc0fa6bf46157e116534903c860987bb543ab8f4ae2c278fc5fae56a94a74196ad265574cab74949fce26d7e16d9da51225e5 -MISC ChangeLog 27762 SHA256 760622a7a00d7619463673b53c0df09b569b2828f761434c33b7d4a48dba6169 SHA512 c8bb7618a3fe1b6a7a59092d17f4a85b2c9798b242e27be9244faa5c1e0430b9b09cf5b24aa23e714757959c1a4cb9dde753c1f43bd7d2180be261dc350adb92 WHIRLPOOL a946970ad259240f7b859be194c802707b2fddbde99fba9232aef4bacee3b4959d5bba7b8c3cb8a827cd00f372e5e1df5c51b2877cc00e4eece0339407bc6a8b +EBUILD elinks-0.12_pre5-r2.ebuild 5412 SHA256 fb269147fb407db4fc2b7da57faf42759d5ace8467c8a5e69ea03ae1c30ff4de SHA512 82117bf96718c80eba306bf488a23c320af03055dd973f394226c8a17cb9dbd1714f91e0a40c74f2da02fb11ddfe44ba412194e285ddaa925c849188e37e3d68 WHIRLPOOL e5b1e59bcac89cc2d4a5145d511ad707135f355066d9a42ff3759f56ff5449502a9e4f70867ddf1bfe5d13f46e63d97e17bc81191a574e7b576c3c26fe3ed83c +MISC ChangeLog 27952 SHA256 b52608eba50b144f87768eabfc9904ab1a92a1ba6ca41c6de011a0ea6e214ffe SHA512 cad3f662833d4e803085e43dbc0d05b979ffc957bd377bcd4730e7b18ea8a502b39e2aa31548df8c0bf6c67321cc7c32edf01c5f46e2a6d07b25c00ebac6f2dd WHIRLPOOL ce64916484f579d2595b3165a46e79de8237f72799b3a6e62dd2426c92d19db5d51a7b0b9214da8bf9fd2c5222252ace6223df7537c20d33f0cd723263dbd980 MISC metadata.xml 497 SHA256 46c078d1cc7e933e17fc97f3fba58c8a6de73e65dc240cf96b18a7e5f9912b31 SHA512 8a0477bedea04f987b7e395e8c8dd15ace2ac7dfb64a71e3a7d2ccd9bb269af4c5f138a3e93e1598cab4655c4ec37cd0c2b11b587a9f692dca7439e35ab7b2a3 WHIRLPOOL d776babefb84a40889ddfa3f6b21922442bf2665ce3d0303ad270ec4f79e44395290131acc789d47862b6600e7df560cbee3f2393fe4c176af4dc7a6c6691f56 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) -iF4EAREIAAYFAk/0j1kACgkQ2ugaI38ACPAWYQD+OI3UxxpBooBIvrOOU6bglC5p -Rlua9wgy3Q0IQnPQJMsA/jn8MizCtZ6emncAPqSUdhIjR5DgDXP9vRrAhe0cwxkX -=5emh +iEYEAREIAAYFAlBVsqkACgkQCaWpQKGI+9Q8/QCbBgyo8qHG+BcjPHahPyvpYA2E +KwMAniqYTdn2YWhPwdlQX8Tns620SIlo +=tos9 -----END PGP SIGNATURE----- diff --git a/www-client/elinks/elinks-0.12_pre5-r2.ebuild b/www-client/elinks/elinks-0.12_pre5-r2.ebuild index fcb793d1f4bf..9ed08994b369 100644 --- a/www-client/elinks/elinks-0.12_pre5-r2.ebuild +++ b/www-client/elinks/elinks-0.12_pre5-r2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/elinks/elinks-0.12_pre5-r2.ebuild,v 1.3 2012/07/04 18:45:08 axs Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-client/elinks/elinks-0.12_pre5-r2.ebuild,v 1.4 2012/09/16 11:06:11 pacho Exp $ EAPI=4 inherit eutils autotools flag-o-matic @@ -68,9 +68,16 @@ src_prepare() { epatch "${FILESDIR}"/${MY_P}-spidermonkey-callback.patch fi fi - epatch "${FILESDIR}"/${P}-ruby-config.patch + epatch "${FILESDIR}"/${P}-ruby-1.9.patch + # Regenerate acinclude.m4 - based on autogen.sh. + cat > acinclude.m4 <<- _EOF + dnl Automatically generated from config/m4/ files. + dnl Do not modify! + _EOF + cat config/m4/*.m4 >> acinclude.m4 sed -i -e 's/-Werror//' configure* + eautoreconf } diff --git a/www-client/elinks/files/elinks-0.12_pre5-ruby-1.9.patch b/www-client/elinks/files/elinks-0.12_pre5-ruby-1.9.patch new file mode 100644 index 000000000000..1e07bcde190a --- /dev/null +++ b/www-client/elinks/files/elinks-0.12_pre5-ruby-1.9.patch @@ -0,0 +1,187 @@ +diff -urp a/config/m4/ruby.m4 b/config/m4/ruby.m4 +--- a/config/m4/ruby.m4 2009-07-07 13:23:17.000000000 +0100 ++++ b/config/m4/ruby.m4 2012-09-10 18:23:09.000000000 +0100 +@@ -32,36 +32,40 @@ if test "$CONFIG_SCRIPTING_RUBY" = "yes" + if test "$CONFIG_SCRIPTING_RUBY" != "no"; then + + AC_MSG_CHECKING(Ruby version) +- if $CONFIG_SCRIPTING_RUBY -e 'exit((VERSION or RUBY_VERSION) >= "1.6.0")' >/dev/null 2>/dev/null; then ++ if $CONFIG_SCRIPTING_RUBY -e 'exit((VERSION rescue RUBY_VERSION) >= "1.6.0")' >/dev/null 2>/dev/null; then + ruby_version=`$CONFIG_SCRIPTING_RUBY -e 'puts "#{VERSION rescue RUBY_VERSION}"'` + AC_MSG_RESULT($ruby_version) + + AC_MSG_CHECKING(for Ruby header files) +- rubyhdrdir=`$CONFIG_SCRIPTING_RUBY -r mkmf -e 'print Config::CONFIG[["archdir"]] || $hdrdir' 2>/dev/null` ++ rubyhdrdir=`$CONFIG_SCRIPTING_RUBY -r mkmf -e 'print RbConfig::CONFIG[["rubyhdrdir"]] || RbConfig::CONFIG[["archdir"]] || $hdrdir' 2>/dev/null` + + if test "X$rubyhdrdir" != "X"; then + AC_MSG_RESULT($rubyhdrdir) + RUBY_CFLAGS="-I$rubyhdrdir" +- rubylibs=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e 'print Config::CONFIG[["LIBS"]]'` ++ rubyarch=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e 'print RbConfig::CONFIG[["arch"]]'` ++ if test -d "$rubyhdrdir/$rubyarch"; then ++ RUBY_CFLAGS="$RUBY_CFLAGS -I$rubyhdrdir/$rubyarch" ++ fi ++ rubylibs=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e 'print RbConfig::CONFIG[["LIBS"]]'` + + if test "X$rubylibs" != "X"; then + RUBY_LIBS="$rubylibs" + fi + +- librubyarg=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e 'print Config.expand(Config::CONFIG[["LIBRUBYARG"]])'` ++ librubyarg=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e 'print RbConfig.expand(RbConfig::CONFIG[["LIBRUBYARG"]])'` + + if test -f "$rubyhdrdir/$librubyarg"; then + librubyarg="$rubyhdrdir/$librubyarg" + + else +- rubylibdir=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e 'print Config.expand(Config::CONFIG[["libdir"]])'` ++ rubylibdir=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e 'print RbConfig.expand(RbConfig::CONFIG[["libdir"]])'` + if test -f "$rubylibdir/$librubyarg"; then + librubyarg="$rubylibdir/$librubyarg" + elif test "$librubyarg" = "libruby.a"; then + dnl required on Mac OS 10.3 where libruby.a doesn't exist + librubyarg="-lruby" + else +- librubyarg=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e "print '$librubyarg'.gsub(/-L\./, %'-L#{Config.expand(Config::CONFIG[\"libdir\"])}')"` ++ librubyarg=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e "print '$librubyarg'.gsub(/-L\./, %'-L#{RbConfig.expand(RbConfig::CONFIG[\"libdir\"])}')"` + fi + fi + +@@ -69,7 +73,7 @@ if test "$CONFIG_SCRIPTING_RUBY" = "yes" + RUBY_LIBS="$librubyarg $RUBY_LIBS" + fi + +- rubyldflags=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e 'print Config::CONFIG[["LDFLAGS"]]'` ++ rubyldflags=`$CONFIG_SCRIPTING_RUBY -r rbconfig -e 'print RbConfig::CONFIG[["LDFLAGS"]]'` + if test "X$rubyldflags" != "X"; then + LDFLAGS="$rubyldflags $LDFLAGS" + fi +@@ -86,6 +90,15 @@ if test "$CONFIG_SCRIPTING_RUBY" = "yes" + AC_MSG_RESULT(too old; need Ruby version 1.6.0 or later) + fi + fi ++ if test "$CONFIG_SCRIPTING_RUBY" = "yes"; then ++ AC_MSG_CHECKING([for rb_errinfo]) ++ AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <ruby.h>]], [[rb_errinfo();]])],have_rb_errinfo="yes",have_rb_errinfo="no") ++ AC_MSG_RESULT($have_rb_errinfo) ++ if test "$have_rb_errinfo" = "yes"; then ++ AC_DEFINE([HAVE_RB_ERRINFO], [1], ++ [Define to 1 if you have the `rb_errinfo' function.]) ++ fi ++ fi + fi + + EL_RESTORE_FLAGS +diff -urp a/src/scripting/ruby/core.c b/src/scripting/ruby/core.c +--- a/src/scripting/ruby/core.c 2009-07-07 13:23:17.000000000 +0100 ++++ b/src/scripting/ruby/core.c 2012-09-10 18:27:05.000000000 +0100 +@@ -76,10 +76,10 @@ erb_report_error(struct session *ses, in + break; + case TAG_RAISE: + case TAG_FATAL: +- eclass = CLASS_OF(ruby_errinfo); +- einfo = rb_obj_as_string(ruby_errinfo); ++ eclass = CLASS_OF(RB_ERRINFO); ++ einfo = rb_obj_as_string(RB_ERRINFO); + +- if (eclass == rb_eRuntimeError && RSTRING(einfo)->len == 0) { ++ if (eclass == rb_eRuntimeError && RSTRING_LEN(einfo) == 0) { + msg = "unhandled exception"; + + } else { +@@ -88,7 +88,7 @@ erb_report_error(struct session *ses, in + + epath = rb_class_path(eclass); + snprintf(buff, MAX_STR_LEN, "%s: %s", +- RSTRING(epath)->ptr, RSTRING(einfo)->ptr); ++ RSTRING_PTR(epath), RSTRING_PTR(einfo)); + + p = strchr(buff, '\n'); + if (p) *p = '\0'; +@@ -115,7 +115,7 @@ erb_module_message(VALUE self, VALUE str + unsigned char *message, *line_end; + + str = rb_obj_as_string(str); +- message = memacpy(RSTRING(str)->ptr, RSTRING(str)->len); ++ message = memacpy(RSTRING_PTR(str), RSTRING_LEN(str)); + if (!message) return Qnil; + + line_end = strchr(message, '\n'); +@@ -162,8 +162,8 @@ erb_stdout_p(int argc, VALUE *argv, VALU + * the inspect() method, which adds quotes to the strings, so + * gently ignore them. */ + +- ptr = RSTRING(substr)->ptr; +- len = RSTRING(substr)->len; ++ ptr = RSTRING_PTR(substr); ++ len = RSTRING_LEN(substr); + + if (*ptr == '"') + ptr++, len--; +diff -urp a/src/scripting/ruby/core.h b/src/scripting/ruby/core.h +--- a/src/scripting/ruby/core.h 2009-07-07 13:23:17.000000000 +0100 ++++ b/src/scripting/ruby/core.h 2012-09-10 18:26:25.000000000 +0100 +@@ -7,6 +7,20 @@ struct session; + + #include <ruby.h> /* for VALUE */ + ++#ifndef RSTRING_LEN ++#define RSTRING_LEN(string) (RSTRING(string)->len) ++#endif ++ ++#ifndef RSTRING_PTR ++#define RSTRING_PTR(string) (RSTRING(string)->ptr) ++#endif ++ ++#ifdef HAVE_RB_ERRINFO ++#define RB_ERRINFO (rb_errinfo()) ++#else ++#define RB_ERRINFO (ruby_errinfo) ++#endif ++ + VALUE erb_module; + + void alert_ruby_error(struct session *ses, unsigned char *msg); +diff -urp a/src/scripting/ruby/hooks.c b/src/scripting/ruby/hooks.c +--- a/src/scripting/ruby/hooks.c 2009-07-07 13:23:17.000000000 +0100 ++++ b/src/scripting/ruby/hooks.c 2012-09-10 17:53:48.000000000 +0100 +@@ -83,7 +83,7 @@ script_hook_goto_url(va_list ap, void *d + { + unsigned char *new_url; + +- new_url = memacpy(RSTRING(result)->ptr, RSTRING(result)->len); ++ new_url = memacpy(RSTRING_PTR(result), RSTRING_LEN(result)); + if (new_url) { + mem_free_set(url, new_url); + } +@@ -126,7 +126,7 @@ script_hook_follow_url(va_list ap, void + { + unsigned char *new_url; + +- new_url = memacpy(RSTRING(result)->ptr, RSTRING(result)->len); ++ new_url = memacpy(RSTRING_PTR(result), RSTRING_LEN(result)); + if (new_url) { + mem_free_set(url, new_url); + } +@@ -170,9 +170,9 @@ script_hook_pre_format_html(va_list ap, + switch (rb_type(result)) { + case T_STRING: + { +- int len = RSTRING(result)->len; ++ int len = RSTRING_LEN(result); + +- add_fragment(cached, 0, RSTRING(result)->ptr, len); ++ add_fragment(cached, 0, RSTRING_PTR(result), len); + normalize_cache_entry(cached, len); + + break; +@@ -216,7 +216,7 @@ script_hook_get_proxy(va_list ap, void * + { + unsigned char *proxy; + +- proxy = memacpy(RSTRING(result)->ptr, RSTRING(result)->len); ++ proxy = memacpy(RSTRING_PTR(result), RSTRING_LEN(result)); + if (proxy) { + mem_free_set(new_proxy_url, proxy); + } |