PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
more 1.7 support.
bug fix of SEGV at exception. thanks to Masahiro Sakai.
use str_buf if available.
suppress a warning.
1.7 support
iconv_fail() became a macro, and setup in iconv_failure_initialize .
Now Iconv inherits Data
rather than Object
.
avoiding iconv()'s bug on some systems.
avoiding Solaris7&8 iconv()'s bug.
removed BUGGY_ICONV
macro, always resets output pointer by
converting an empty string before shift state initializations.
ignores errors when input length is 0.
trying to avoid problem of Free BSD iconv.
defaulted to none-buggy iconv.
declared iconv_fail with NORETURN
.
merged with unprotoized version.
ensures out of scope Iconv objects to be closed.
raises when closed Iconv passed to Iconv#iconv .
RUBY_DATA_FUNC
was not a macro.
compatible for 1.4 and 1.5.
defines OBJ_INFECT
macro for 1.4.
uses rb_obj_freeze()
if present.
Ruby style.
Modified rd.
Strict check for change, whether output differs input.
Added rb_str_derive()
, to ensure infect with tainted object.
Initialize @mesg to failed.inspect and brushed up about
exception.
Changed Iconv::Failure initialization.
Workaround for iconv()
's bug in glibc, by "resetting" with
empty string before initializing output shift state.
Added NULL check for outptr before range check for
outlen . This may workaround some iconv()
's bug.
Shortened message upon Iconv::OutOfRange .
Now iconv_convert
no longer pushes returning value into array,
except with exception. And uses <<
to add precedents ,
in other words, it's no longer bound to Array.
iconv_each
also uses <<
.
Iconv.iconv no longer append surplus empty string.
Bug-fix of the workaround while converting UCS-4 string.
Workaround for iconv()
's bug returns horrible value as
outbytesleft .
Now Iconv::Failure is a module. So, the exceptions include it.
Iconv::Failre#success had been nil
.
iconv_convert()
had returned original string.
Release version