SIGFPE (division by zero) in random number app
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 35/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- cpp
- Domaine
- embedded-iot
Piste de recherche
Reproduisez le crash dans l’application de nombres aléatoires, puis inspectez InfiniTime/src/components/motion/MotionController.cpp et MotionController::ShouldShakeWake, en vous concentrant sur le cas time == lastTime. Examinez le patch joint InfiniTime_FPE.zip et déterminez si le guard doit se trouver dans InfiniTime ou s’il ne fait que contourner un problème du simulateur. Le travail est terminé lorsque la génération répétée de nombres aléatoires ne termine plus le simulateur avec SIGFPE.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Enter the random number app.
Click the "generate random number" button, or one of the "+" or "-" buttons, a few times.
Most of the times, this will stop the simulator process with a SIGFPE due to a division by zero in InfiniTime/src/components/motion/MotionController.cpp, function MotionController::ShouldShakeWake, because time == lastTime
This looks like having time == lastTime could be a simulator bug, not an issue on actual hardware, not sure.
Here's the patch I have applied locally to InfiniTime; let me know if you think it should go to InfiniTime (cleaned up of debugging output to cerr, obviously) for better robustness or is just a work-around for a simulator bug.
(sorry I upload it as a ZIP file, github doesn't let me attach a patch file with a messaging listing the supported file types, among which "PATCH")
- Langage dominant
- C++
- Étoiles
- 203
- Forks
- 99
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Aucun guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de InfiniTimeOrg/InfiniSim
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
InfiniTimeOrg/InfiniSim#202 · 1 commentaire ·
-
bug
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
InfiniTimeOrg/InfiniSim#189 · 3 commentaires ·
-
Slowdown with excess drawsOuverteenhancement
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
InfiniTimeOrg/InfiniSim#162 · 1 commentaire ·
-
Free memory budget is wrongOuvertebug
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
InfiniTimeOrg/InfiniSim#128 · 1 commentaire ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
InfiniTimeOrg/InfiniSim#127 · 5 commentaires ·
Toutes les issues de InfiniTimeOrg/InfiniSim
Issues similaires
-
[WinReg] update to v12.0.0Ouvertecategory:port-update
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 2 jours
-
(S1 - Need confirmation)
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
CleverRaven/Cataclysm-DDA#89194 ·
Les mainteneurs répondent en général sous 1 jour
-
reproduced
Difficulté 1/5 Moins d'une heure Accessibilité débutants 67/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
Reusing a stream after a mid-speech stop: the next session opens with a phantom line ("you")Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
moonshine-ai/moonshine#231 ·