Erreur de segmentation, sous linux Gentoo

Sawyer4 Messages postés 14 Statut Membre -  
Sawyer4 Messages postés 14 Statut Membre -
Bonjour à tous,

J'ai enfin réussit à compiler mon programme sous linux, il tourne sous QT 4 ^^
Et donc ce midi je le lance : toutes les 50ms il liste les fichiers d'un répertoire dans une Qlist <QString> et il les traitent en fonction de leur contenu pour ensuite les supprimer. Les fichiers je les ajoutes moi même dans le répertoire avec les bons droits et users, et j'y écrit n'importe koi afin que le programme les signals comme illisible, l'indique dans le log et les supprimes.

Cependant dès lors que j'ajoute un fichier à l'intérieur du dossier, des fois il le traite et très souvent il m'indique une "Erreur de segmentation"

J'ai beaucoup cherché sur internet, du coté des allocations de mémoires mais rien n'y fait c'est pourquoi je demande votre aide ^^

Pour ceux qui peuvent m'aider je poste ma fonction ou ça coince selon moi à cause du "Remove" :

[quote]
/*TRAITEMENT */
void serveur::Traitement(){
int i=0;
QList <QString> ligne;
for(i=0;i<liste.size();i++){

//On recupere le fichier et on le traite
QFile file(RACINE+liste[i]);

if (file.open(QFile::ReadOnly)) {

QTextStream in(&file);
while ( !in.atEnd() ){
ligne << in.readLine();
}

file.close();

if(ligne[0] == "RENAME"){
if(!RENAME(RACINE_SITE+ligne[1], RACINE_SITE+ligne[2])){ COPY(RACINE+liste[i], RACINE+"erreur/"+liste[i]); addLog("Nom du fichier "+ligne[1]+" modifié échoué"); }else{ addLog("Nom du fichier "+ligne[1]+" modifié avec succés"); }
}

if(ligne[0] == "COPY"){
if(!COPY(RACINE_SITE+ligne[1], RACINE_SITE+ligne[2])){ addLog("COPIE de "+ligne[1]+" échouée"); }else{ addLog("COPIE de "+ligne[1]+" réussie"); }
}

if(ligne[0] == "BDD"){
if(!MysqlAction(ligne[1])){ addLog("::OK:: Requête Msql : "+ligne[1]); }else{ addLog(" ::ERROR:: Requête Msql : "+ligne[1]); addLog("Erreur :: "+QString(mysql_error(&mysql))); }
}

if(ligne[0] == "ENCODE"){
if(!FFmpeg(ligne[1])){ addLog("::OK:: Requete d'encodage Video : "+ligne[1]); }else{ addLog("::ERROR:: Requete d'encodage Video : "+ligne[1]); }
}

//Dans tous les cas on supprime le fichier
remove((RACINE+liste[i]).toStdString().c_str());
liste.removeAt(i);

}
if(ligne[0] != "RENAME" && ligne[0] != "COPY" && ligne[0] != "BDD" && ligne[0] != "ENCODE"){
addLog("Fichier "+liste[i]+" -- Illisible");
}

}

}
/quote

Merci d'avance à tous les lecteurs et à ceux qui m'aideront

Merci ^^, Cordialement Sawyer
A voir également:

1 réponse

Sawyer4 Messages postés 14 Statut Membre
 
Re tous le monde,

En espérant avoir eu des visites ^^

Sur ceux j'ai résolu mon message, dont voici la réponse : https://openclassrooms.com/forum/sujet/erreur-de-segmentation-sous-linux-44141#r3537663

Merci à tous, bonne journée et soirée
0