[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: (ITS#8270) win32: fix conversion error
--f46d042184850fb03c0522fcd987
Content-Type: text/plain; charset=UTF-8
Howard, any chance to get this in or should I change something else?
Also, any chance you could have a look at "ITS#8274"?
Thanks in advance!
On Tue, Oct 20, 2015 at 10:37 PM, Ignacio Casal Quinteiro <
nacho.resa@gmail.com> wrote:
>
>
> On Tue, Oct 20, 2015 at 10:09 PM, Howard Chu <hyc@symas.com> wrote:
>
>> nacho.resa@gmail.com wrote:
>>
>>> --047d7bb03a5ac118d20522842ead
>>> Content-Type: text/plain; charset=UTF-8
>>>
>>> So I took another closer look at this issue and I went for this possible
>>> solution:
>>>
>>> https://github.com/nice-software/lmdb/commit/03987789735141dc68ae8b2d0e5ad52d82cc80d0
>>>
>>
>> That looks OK.
>>
>> Basically it errors out because MSVC needs stdcall on that method.
>>>
>>
>> You realize of course, that this change actually has no effect on the
>> code here? stdcall uses Pascal argument order instead of C order but it's
>> moot since the function only has 1 argument.
>>
>
> yeah... but if this fixes the error I am fine with it, after all it end
> ups being just a define
>
>
>>
>>
>>> Cheers.
>>>
>>> On Mon, Oct 19, 2015 at 2:55 PM, Ignacio Casal Quinteiro <
>>> nacho.resa@gmail.com> wrote:
>>>
>>> Sorry! I did indeed meant to change just the windows part, for some
>>>> reason
>>>> I thought it was already ifdeffed that part.
>>>>
>>>>
>>>> https://github.com/nice-software/lmdb/commit/42577fe173923c1166f8382a53523a31479f9d43
>>>>
>>>> This is the right patch.
>>>>
>>>> On Mon, Oct 19, 2015 at 1:43 PM, Hallvard Breien Furuseth <
>>>> h.b.furuseth@usit.uio.no> wrote:
>>>>
>>>> On 19. okt. 2015 08:57, nacho.resa@gmail.com wrote:
>>>>>
>>>>> I do not understand, I tested also with mingw64 (...)
>>>>>>
>>>>>>
>>>>> There's no LPTHREAD_START_ROUTINE type on non-Windows machines.
>>>>> You could replace 'start' with '(LPTHREAD_START_ROUTINE)(start)'
>>>>> in the _WIN32 variant of '#define THREAD_CREATE...'.
>>>>>
>>>>> However, it's still wrong to call a function via another prototype.
>>>>> Maybe that'd fall on 32-bit Windows or something, I don't know
>>>>> how LPTHREAD_START_ROUTINE is defined. The safe way would be to
>>>>> give mdb_env_copythr() a prototype which does not need a cast.
>>>>> There is some code for that already. Maybe it can be improved.
>>>>>
>>>>> --
>>>>> Hallvard
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Ignacio Casal Quinteiro
>>>>
>>>>
>>>
>>>
>>>
>>
>> --
>> -- Howard Chu
>> CTO, Symas Corp. http://www.symas.com
>> Director, Highland Sun http://highlandsun.com/hyc/
>> Chief Architect, OpenLDAP http://www.openldap.org/project/
>>
>
>
>
> --
> Ignacio Casal Quinteiro
>
--
Ignacio Casal Quinteiro
--f46d042184850fb03c0522fcd987
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><div><div>Howard, any chance to get this in or should I ch=
ange something else?<br></div>Also, any chance you could have a look at &qu=
ot;ITS#8274"?<br><br></div>Thanks in advance!<br></div><div class=3D"g=
mail_extra"><br><div class=3D"gmail_quote">On Tue, Oct 20, 2015 at 10:37 PM=
, Ignacio Casal Quinteiro <span dir=3D"ltr"><<a href=3D"mailto:nacho.res=
a@gmail.com" target=3D"_blank">nacho.resa@gmail.com</a>></span> wrote:<b=
r><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:=
1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><br><div class=3D"gmail_e=
xtra"><br><div class=3D"gmail_quote"><span class=3D"">On Tue, Oct 20, 2015 =
at 10:09 PM, Howard Chu <span dir=3D"ltr"><<a href=3D"mailto:hyc@symas.c=
om" target=3D"_blank">hyc@symas.com</a>></span> wrote:<br><blockquote cl=
ass=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;p=
adding-left:1ex"><a href=3D"mailto:nacho.resa@gmail.com" target=3D"_blank">=
nacho.resa@gmail.com</a> wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
--047d7bb03a5ac118d20522842ead<br>
Content-Type: text/plain; charset=3DUTF-8<span><br>
<br>
So I took another closer look at this issue and I went for this possible<br=
>
solution:<br>
<a href=3D"https://github.com/nice-software/lmdb/commit/03987789735141dc68a=
e8b2d0e5ad52d82cc80d0" rel=3D"noreferrer" target=3D"_blank">https://github.=
com/nice-software/lmdb/commit/03987789735141dc68ae8b2d0e5ad52d82cc80d0</a><=
br>
</span></blockquote>
<br>
That looks OK.<span><br>
<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
Basically it errors out because MSVC needs stdcall on that method.<br>
</blockquote>
<br></span>
You realize of course, that this change actually has no effect on the code =
here? stdcall uses Pascal argument order instead of C order but it's mo=
ot since the function only has 1 argument.<span><br></span></blockquote><di=
v><br></div></span><div>yeah... but if this fixes the error I am fine with =
it, after all it end ups being just a define<br></div><div><div class=3D"h5=
"><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 =
.8ex;border-left:1px #ccc solid;padding-left:1ex"><span>
<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
<br>
Cheers.<br>
<br>
On Mon, Oct 19, 2015 at 2:55 PM, Ignacio Casal Quinteiro <<br>
<a href=3D"mailto:nacho.resa@gmail.com" target=3D"_blank">nacho.resa@gmail.=
com</a>> wrote:<br>
<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
Sorry! I did indeed meant to change just the windows part, for some reason<=
br>
I thought it was already ifdeffed that part.<br>
<br>
<a href=3D"https://github.com/nice-software/lmdb/commit/42577fe173923c1166f=
8382a53523a31479f9d43" rel=3D"noreferrer" target=3D"_blank">https://github.=
com/nice-software/lmdb/commit/42577fe173923c1166f8382a53523a31479f9d43</a><=
br>
<br>
This is the right patch.<br>
<br>
On Mon, Oct 19, 2015 at 1:43 PM, Hallvard Breien Furuseth <<br>
<a href=3D"mailto:h.b.furuseth@usit.uio.no" target=3D"_blank">h.b.furuseth@=
usit.uio.no</a>> wrote:<br>
<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
On 19. okt. 2015 08:57, <a href=3D"mailto:nacho.resa@gmail.com" target=3D"_=
blank">nacho.resa@gmail.com</a> wrote:<br>
<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
I do not understand, I tested also with mingw64 (...)<br>
<br>
</blockquote>
<br>
There's no LPTHREAD_START_ROUTINE type on non-Windows machines.<br>
You could replace 'start' with '(LPTHREAD_START_ROUTINE)(start)=
'<br>
in the _WIN32 variant of '#define THREAD_CREATE...'.<br>
<br>
However, it's still wrong to call a function via another prototype.<br>
Maybe that'd fall on 32-bit Windows or something, I don't know<br>
how LPTHREAD_START_ROUTINE is defined.=C2=A0 The safe way would be to<br>
give mdb_env_copythr() a prototype which does not need a cast.<br>
There is some code for that already. Maybe it can be improved.<br>
<br>
--<br>
Hallvard<br>
<br>
</blockquote>
<br>
<br>
<br>
--<br>
Ignacio Casal Quinteiro<br>
<br>
</blockquote>
<br>
<br>
<br>
</blockquote>
<br>
<br>
-- <br></span><div><div>
=C2=A0 -- Howard Chu<br>
=C2=A0 CTO, Symas Corp.=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"=
http://www.symas.com" rel=3D"noreferrer" target=3D"_blank">http://www.symas=
.com</a><br>
=C2=A0 Director, Highland Sun=C2=A0 =C2=A0 =C2=A0<a href=3D"http://highland=
sun.com/hyc/" rel=3D"noreferrer" target=3D"_blank">http://highlandsun.com/h=
yc/</a><br>
=C2=A0 Chief Architect, OpenLDAP=C2=A0 <a href=3D"http://www.openldap.org/p=
roject/" rel=3D"noreferrer" target=3D"_blank">http://www.openldap.org/proje=
ct/</a><br>
</div></div></blockquote></div></div></div><span class=3D"HOEnZb"><font col=
or=3D"#888888"><br><br clear=3D"all"><br>-- <br><div>Ignacio Casal Quinteir=
o</div>
</font></span></div></div>
</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature">Ignacio Casal Quinteiro</div>
</div>
--f46d042184850fb03c0522fcd987--