2011/2/9 Didier Verna <span dir="ltr"><<a href="mailto:didier@lrde.epita.fr">didier@lrde.epita.fr</a>></span><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

<div class="im"><br>
> Nothing has changed in ECL, it is just that Unicode builds are now the<br>
> default and it triggered this unexpected condition. I just changed<br>
> GETENV to coerce its input to the appropriate type.<br>
<br>
</div>  But shouldn't I be the one to do that in my own application instead? I<br>
mean, I *know* that my strings really are base strings, but ECL doesn't.<br>
</blockquote></div><br>Ok, here I go again :-) Several POSIX routines in ECL do a   string -> base-string checked coercion that does the following steps:<br><br>1) It verifies that the original string only contains base-char. If this is not the case, it signals an error.<br>

2) It duplicates the string, creating a base-string which has as length the length of the original one (taking into account the fill pointer), contains the same characters and is zero terminated.<br><br>So, again, the routine will signal an error if the input is not compatible with a POSIX call, but if it is, it will do its best to accomodate it into a (char *)<br>

<br>Juanjo<br><br>-- <br>Instituto de Física Fundamental, CSIC<br>c/ Serrano, 113b, Madrid 28006 (Spain) <br><a href="http://juanjose.garciaripoll.googlepages.com" target="_blank">http://juanjose.garciaripoll.googlepages.com</a><br>