IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qt Discussion :

SIGSEGV insoluble dans QGraphicsItem


Sujet :

Qt

  1. #1
    Membre régulier
    Avatar de alpha_one_x86
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 411
    Points : 113
    Points
    113
    Par défaut SIGSEGV insoluble dans QGraphicsItem
    Bonjour,

    Ca fait maintenant 1 mois que je n'arrive pas a résoudre ce segfault:
    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
    ==4071331== Invalid read of size 8
    ==4071331==    at 0x4D5D073: QGraphicsItem::dragMoveEvent(QGraphicsSceneDragDropEvent*) (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.15.2)
    ==4071331==    by 0x4D6F3D5: QGraphicsItem::setFlags(QFlags<QGraphicsItem::GraphicsItemFlag>) (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.15.2)
    ==4071331==    by 0x50F9C9: MapItem::MapItem(QGraphicsItem*) (map2png.cpp:158)
    ==4071331==    by 0x5142EF: Map2Png::viewMap(bool const&, QString const&, QString const&) (map2png.cpp:578)
    ==4071331==    by 0x4ABB8C: main (main.cpp:132)
    ==4071331==  Address 0x0 is not stack'd, malloc'd or (recently) free'd
    ==4071331== 
    ==4071331== 
    ==4071331== Process terminating with default action of signal 11 (SIGSEGV)
    ==4071331==  Access not within mapped region at address 0x0
    ==4071331==    at 0x4D5D073: QGraphicsItem::dragMoveEvent(QGraphicsSceneDragDropEvent*) (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.15.2)
    ==4071331==    by 0x4D6F3D5: QGraphicsItem::setFlags(QFlags<QGraphicsItem::GraphicsItemFlag>) (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.15.2)
    ==4071331==    by 0x50F9C9: MapItem::MapItem(QGraphicsItem*) (map2png.cpp:158)
    ==4071331==    by 0x5142EF: Map2Png::viewMap(bool const&, QString const&, QString const&) (map2png.cpp:578)
    ==4071331==    by 0x4ABB8C: main (main.cpp:132)
    ==4071331==  If you believe this happened as a result of a stack
    ==4071331==  overflow in your program's main thread (unlikely but
    ==4071331==  possible), you can try to increase the size of the
    ==4071331==  main thread stack using the --main-stacksize= flag.
    ==4071331==  The main thread stack size used in this run was 8388608.
    https://github.com/alphaonex86/Catch.../tools/map2png

    Hors un bug dans Qt car le parent est null, je ne vois pas le probléme.
    Si vous pouviez m'aider, merci
    Développeur d'Ultracopier

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Bonjour,

    En effet, je trouve particulier qu'un setFlag() entraine un dragMoveEvent(). Mis à part cette considération, je conseillerai de prendre les sources de Qt (quitte à recompiler Qt localement pour avoir les symboles de débogage) et j'irai voir ce qu'il en est.
    Autrement, il faut voir si cela se reproduit avec une nouvelle version de Qt.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre régulier
    Avatar de alpha_one_x86
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 411
    Points : 113
    Points
    113
    Par défaut
    Bonjour, le probléme été du j'avais plusieurs
    Et des fois un seul
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    class A
    {
    void toto();
    }
    mais divers
    Pourquoi ni le compilateur ni le linker a emit un erreur? Ni g++/gold ni clang/lld!
    Développeur d'Ultracopier

Discussions similaires

  1. QMessageBox dans QGraphicsItem::paint
    Par Astraya dans le forum Qt
    Réponses: 4
    Dernier message: 12/01/2016, 13h31
  2. Sauvegarde/restauration de QFlags dans QGraphicsItem
    Par chrtophe dans le forum Débuter
    Réponses: 1
    Dernier message: 22/02/2014, 10h14
  3. Mystère insoluble dans programme archi-simple
    Par lebelge dans le forum Débuter
    Réponses: 5
    Dernier message: 02/08/2011, 14h49
  4. [2D/3D] Comment gérer des intersections dans QGraphicsItem::paint()
    Par sebmag dans le forum Débuter
    Réponses: 5
    Dernier message: 28/09/2010, 12h49
  5. problème insoluble dans les listes déroulantes
    Par gaihdriah dans le forum Excel
    Réponses: 6
    Dernier message: 06/02/2009, 14h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo