• [^] # Re: g_array_index

    Posté par . En réponse au message Galère de pointeurs avec les GArrays. Évalué à 1.

    j'obtiens un segfault dans le cas :

    iph2 = g_array_index(P_to_Array, struct iphdr*, i);

    quand j'utilise :

    iph2 = & g_array_index(P_to_Array, struct iphdr *, i);

    j'obtiens les résultats erratiques dont je parlais dans mon premier post


    la structure "m" est de type ipq_packet_msg_t, elle contient un paquet ramené dans un hook IPQ par netfilter
    de fait, "m->payload" contient le paquet raw, le reste de la structure c'est des metadonnées IPQ qui ne m'interesse pas

    le GArray semble être fonctionnel car lorsque j'accède à "P_to_Array->len" il me retourne bien le nombre de cases que contient le tableau, et ce dans tous les cas

    de fait, je pense que mon problème vient soit de l'ajout dans le tableau, soit dans la définition du tableau avec

    value = g_array_new(FALSE, FALSE, 1500);

    ou 1500 est censé être la taille en bytes de chaque case