New release?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

New release?

Eystein Måløy Stenberg-2
Hi,

I have encountered a severe bug on a 64-bit MinGW build
(http://mingw-w64.sourceforge.net/) of version 2.8.0.

pthread_mutex_trylock always returns 0, no matter if the lock is held or
not, and it never takes the lock. This causes pthread_mutex_destroy to
always fail, and probably has other bad effects.

To reproduce, try the following.

---
int res_init = pthread_mutex_init(&mutex, NULL);
int res_lock = pthread_mutex_lock(&mutex);
int res_trylock = pthread_mutex_trylock(&mutex);
int res_trylock2 = pthread_mutex_trylock(&mutex);
int res_unlock = pthread_mutex_unlock(&mutex);
int res_destroy = pthread_mutex_destroy(&mutex);
printf("res_init=%d, res_lock=%d, res_trylock=%d, res_trylock2=%d,
res_unlock=%d, res_destroy=%d\n", res_init, res_lock, res_trylock,
res_trylock2, res_unlock, res_destroy);
---

This seems to have been fixed in the latest cvs release. Since it has
also been almost 6 years since the last release, could we please get a
new release soon?

Thank you.

--

Eystein
Reply | Threaded
Open this post in threaded view
|

Re: New release?

Ross Johnson-2
Hi Eystein,

Yes, the 64 bit code in 2.8.0 was probably very dodgy. I believe CVS is
stable at the moment so I will consider tagging it as 2.9.0.

ASAP.

Ross

On 8/05/2012 5:02 AM, Eystein Måløy Stenberg wrote:

> Hi,
>
> I have encountered a severe bug on a 64-bit MinGW build
> (http://mingw-w64.sourceforge.net/) of version 2.8.0.
>
> pthread_mutex_trylock always returns 0, no matter if the lock is held
> or not, and it never takes the lock. This causes pthread_mutex_destroy
> to always fail, and probably has other bad effects.
>
> To reproduce, try the following.
>
> ---
> int res_init = pthread_mutex_init(&mutex, NULL);
> int res_lock = pthread_mutex_lock(&mutex);
> int res_trylock = pthread_mutex_trylock(&mutex);
> int res_trylock2 = pthread_mutex_trylock(&mutex);
> int res_unlock = pthread_mutex_unlock(&mutex);
> int res_destroy = pthread_mutex_destroy(&mutex);
> printf("res_init=%d, res_lock=%d, res_trylock=%d, res_trylock2=%d,
> res_unlock=%d, res_destroy=%d\n", res_init, res_lock, res_trylock,
> res_trylock2, res_unlock, res_destroy);
> ---
>
> This seems to have been fixed in the latest cvs release. Since it has
> also been almost 6 years since the last release, could we please get a
> new release soon?
>
> Thank you.
>