<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jul 9, 2014 at 10:36 AM, Alexandre Julliard <span dir="ltr"><<a href="mailto:julliard@winehq.org" target="_blank">julliard@winehq.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Nikolay Sivov <<a href="mailto:nsivov@codeweavers.com">nsivov@codeweavers.com</a>> writes:<br>
<br>
> +    ptr = &geoinfodata[geoid];<br>
> +    if (!*ptr->iso2W) {<br>
> +        SetLastError(ERROR_INVALID_PARAMETER);<br>
> +        return 0;<br>
> +    }<br>
> +<br>
> +    len = get_geoinfo_len(geoid, geotype);<br>
> +    if (!data || !data_len)<br>
> +        return len;<br>
<br>
You could check this at the end before copying the string instead of<br>
having a duplicate function for the length.<br></blockquote><div> <br></div><div>Ok, I think I understand what you mean.<br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<br>
> +INT WINAPI GetGeoInfoA(GEOID geoid, GEOTYPE geotype, LPSTR data, int data_len, LANGID lang)<br>
> +{<br>
> +    WCHAR buffW[12];<br>
> +    INT len = 0;<br>
> +<br>
> +    TRACE("%d %d %p %d %d\n", geoid, geotype, data, data_len, lang);<br>
> +<br>
> +    if (!data || !data_len)<br>
> +        return GetGeoInfoW(geoid, geotype, NULL, 0, lang);<br>
<br>
You can't just return the W length.<br></blockquote><div> </div><div>That's true. Length is identical for all types except country names (potentially, I didn't check that) as it's a character length. But yeah, this is dirty. I'll need to W -> A + length check for resulting A string I think.<br>
<br></div><div>Thanks for commenting.<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Alexandre Julliard<br>
<a href="mailto:julliard@winehq.org">julliard@winehq.org</a><br>
<br>
<br>
</font></span></blockquote></div><br></div></div>