salut à tous

j'ai un problème avec le code suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
int parse_config(char *line)
{
    char *key, *value;
 
    key = strtok(line, " \t\r\n");
    value = strtok(NULL, "");
 
    if (*value)
    {
	// suppression des espaces en debut de value
	while (isspace(*value))
	{
             value++;
	}
        // suppression du retour chariot
	while (*value != '\0')
	{
		if (*value == '\n')
		{
		      value--;
		}
	}
     }
     printf("%s|%s\n", key, value);
     return 1;
}
tout ce passe bien jusqu'au moment ou j'essai de supprimer le retour chariot, le programme reste bloqué.