[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#443660: New test case for #443660



found 443660 2.7-4
thanks

	Hello,

Seems like the original test case does not crash anymore. I still have 
problems with this one new though - it crashes pseudorandomly (about 10% 
crashes here). Unfortunately, I have not been able to reproduce the problem 
under a debugger.

Interestingly, I once had the crash with the first error message in C locale:

# ./a.out
Connection timed out
Erreur de segmentation
#

Then again, I also had this once:
# ./a.out
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Connexion terminée par expiration du délai d'attente
Erreur de segmentation
#

-- 
Rémi Denis-Courmont
http://www.remlab.net/
#include <stdio.h>
#include <pthread.h>
#include <locale.h>
#include <libintl.h>
#include <errno.h>

#define NTH 100

static pthread_barrier_t *bp;

static void *run (void *dummy)
{
	char buf[256];

	(void)dummy;
	errno = ETIMEDOUT;

	pthread_barrier_wait (bp);
	for (;;)
	{
		snprintf (buf, sizeof (buf), "%m");
		puts (buf);
	}
}

int main (void)
{
	unsigned i;
	pthread_barrier_t barrier;
	pthread_t threads[NTH];

	setlocale (LC_ALL, "");
	bindtextdomain ("vlc", "/usr/share/locale");

	pthread_barrier_init (&barrier, NULL, NTH);
	bp = &barrier;

	for (i = 0; i < NTH; i++)
		pthread_create (threads + i, NULL, run, NULL);

	run (NULL);
	return 0;
}

Reply to: