[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#8270) win32: fix conversion error



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.

>
> 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/