Bug#392774: wormux: blocks the whole X session when GNU touches the first object
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Eddy Petrișor wrote: > Hello, > > Steve, thanks for the additional info, I didn't realised the value was > e+306 until you pointed it out. > > I will look into the physics engine to see what is wrong and try to > understand what is wrong. It appears that upstream is quite aware of the > issue that it exists, but they don't know why it happens: > > -8<--- > //Due to a bug in the physic engine > //sometimes, angle==infinite (according to gdb) ?? > GetSpeed(norme, angle); > > while(angle < -M_PI) angle += M_PI; > while(angle > M_PI) angle -= M_PI; > > -8<--- I have looked deeper into this issue, and (of course, still a problem just in front of me - the lack of coding in the last year starts to show its hideous face). I have seen this from the start, but I have payed too much attention. The issue is that angle and norme are declared locally instead of the class. The physics engine is quite ok from the GNU POV. I will be experimenting with some asserts in the code before providing a final patch. In care anyone cares, here is the current (debugging) state: - --- wormux-0.7.4.orig/src/object/physics.cpp +++ wormux-0.7.4/src/object/physics.cpp @@ -192,6 +192,12 @@ break; default: + assert(m_motion_type==NoMotion); + /* + printf ("\n> motion type:%d\n",m_motion_type); + printf ("> angle :%d\n",angle); + printf ("> norm :%d\n\n",norm); + */ break ; } } - --- wormux-0.7.4.orig/src/weapon/gnu.h +++ wormux-0.7.4/src/weapon/gnu.h @@ -39,6 +39,7 @@ int m_sens; int save_x, save_y; double angle; + double norme; public: Gnu(ExplosiveWeaponConfig& cfg); void Shoot(double strength); - --- wormux-0.7.4.orig/src/weapon/gnu.cpp +++ wormux-0.7.4/src/weapon/gnu.cpp @@ -47,6 +47,8 @@ save_y=GetY(); double angle = ActiveTeam().crosshair.GetAngleRad(); + assert(angle < M_PI); + assert(angle > -M_PI); if(angle-M_PI/2) m_sens = 1; @@ -58,7 +60,6 @@ { WeaponProjectile::Refresh(); - - double norme, angle; //When we hit the ground, jump ! if(!IsMoving()&& !FootsInVacuum()) { @@ -78,10 +79,23 @@ //Due to a bug in the physic engine //sometimes, angle==infinite (according to gdb) ?? + //No, is just the angle and norm should not be redefined locally + //Is so much easier to blame others, ain't it? :-) GetSpeed(norme, angle); + /* while(angle < -M_PI) angle += M_PI; + if(angle > M_PI) + { +long int chunk = (floor(angle/M_PI)) * M_PI ; +angle -= chunk ; + } while(angle > M_PI) angle -= M_PI; + */ + if (angle < M_PI) printf ("OUCH: angle=%f\n",angle); + assert(angle < M_PI); + if (angle > -M_PI) printf ("OUCH: angle=%f\n",angle); + assert(angle >= -M_PI); angle *= 180.0 / M_PI; angle /= 2.0; - ---8<--- - -- Regards, EddyP = "Imagination is more important than knowledge" A.Einstein -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFUdpTY8Chqv3NRNoRAh6zAJ44q1BhY6LCYZyWTKthX/newJO55gCdGUFr e2rCby1HIaqPI/IMP9uPGZg= =qroI -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
Hi, I've forwarded this mail to wormux core team. Thank you for worrying about this. I really don't have time do spend on Wormux currently :-( Jean Le 08.11.2006 14:23, Eddy Petrișor a écrit : -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Eddy Petrișor wrote: Hello, Steve, thanks for the additional info, I didn't realised the value was e+306 until you pointed it out. I will look into the physics engine to see what is wrong and try to understand what is wrong. It appears that upstream is quite aware of the issue that it exists, but they don't know why it happens: -8<--- //Due to a bug in the physic engine //sometimes, angle==infinite (according to gdb) ?? GetSpeed(norme, angle); while(angle < -M_PI) angle += M_PI; while(angle > M_PI) angle -= M_PI; -8<--- I have looked deeper into this issue, and (of course, still a problem just in front of me - the lack of coding in the last year starts to show its hideous face). I have seen this from the start, but I have payed too much attention. The issue is that angle and norme are declared locally instead of the class. The physics engine is quite ok from the GNU POV. I will be experimenting with some asserts in the code before providing a final patch. In care anyone cares, here is the current (debugging) state: - --- wormux-0.7.4.orig/src/object/physics.cpp +++ wormux-0.7.4/src/object/physics.cpp @@ -192,6 +192,12 @@ break; default: + assert(m_motion_type==NoMotion); + /* + printf ("\n> motion type:%d\n",m_motion_type); + printf ("> angle :%d\n",angle); + printf ("> norm :%d\n\n",norm); + */ break ; } } - --- wormux-0.7.4.orig/src/weapon/gnu.h +++ wormux-0.7.4/src/weapon/gnu.h @@ -39,6 +39,7 @@ int m_sens; int save_x, save_y; double angle; + double norme; public: Gnu(ExplosiveWeaponConfig& cfg); void Shoot(double strength); - --- wormux-0.7.4.orig/src/weapon/gnu.cpp +++ wormux-0.7.4/src/weapon/gnu.cpp @@ -47,6 +47,8 @@ save_y=GetY(); double angle = ActiveTeam().crosshair.GetAngleRad(); + assert(angle < M_PI); + assert(angle > -M_PI); if(angle-M_PI/2) m_sens = 1; @@ -58,7 +60,6 @@ { WeaponProjectile::Refresh(); - - double norme, angle; //When we hit the ground, jump ! if(!IsMoving()&& !FootsInVacuum()) { @@ -78,10 +79,23 @@ //Due to a bug in the physic engine //sometimes, angle==infinite (according to gdb) ?? + //No, is just the angle and norm should not be redefined locally + //Is so much easier to blame others, ain't it? :-) GetSpeed(norme, angle); + /* while(angle < -M_PI) angle += M_PI; + if(angle > M_PI) + { +long int chunk = (floor(angle/M_PI)) * M_PI ; +angle -= chunk ; + } while(angle > M_PI) angle -= M_PI; + */ + if (angle < M_PI) printf ("OUCH: angle=%f\n",angle); + assert(angle < M_PI); + if (angle > -M_PI) printf ("OUCH: angle=%f\n",angle); + assert(angle >= -M_PI); angle *= 180.0 / M_PI; angle /= 2.0; - ---8<--- - -- Regards, EddyP = "Imagination is more important than knowledge" A.Einstein -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFUdpTY8Chqv3NRNoRAh6zAJ44q1BhY6LCYZyWTKthX/newJO55gCdGUFr e2rCby1HIaqPI/IMP9uPGZg= =qroI -END PGP SIGNATURE- ___ Pkg-games-devel mailing list Pkg-games-devel@lists.alioth.debian.org http://lists.alioth.debian.org/mailman/listinfo/pkg-games-devel -- ___ / Le moins que l'on puisse demander à \ | une sculpture, c'est qu'elle ne bouge | \ pas. -+- Salvador Dali -+-/ --- \ ^__^ \ (--)\___ (__)\ )\/\ ||w | || || -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Jean Parpaillon wrote: > Hi, hi Jean, > I've forwarded this mail to wormux core team. Thank you for worrying > about this. I really don't have time do spend on Wormux currently :-( No problem. I will have a clean patch probably tomorrow after more testing done tonight. Wormux team, you can follow the progress on this at http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=392774 [Bcc-ed this mail to the wormux-dev since I saw they try to keep spam down] - -- Regards, EddyP = "Imagination is more important than knowledge" A.Einstein -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFUf+QY8Chqv3NRNoRApBiAJ0S/Y6EoYfQfMBgiSGfodcKili/PgCgreDW JX3ph6InZmNLzlqaxMQUKqo= =Xvdc -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
Hi, I had a look at this bug and one simple fix you could at least do is switch the possibly endless loops into an fmod function call. This would reduce the severity of this bug significantly. --- src/weapon/gnu.cpp.orig 2006-11-12 01:08:13.0 +0200 +++ src/weapon/gnu.cpp 2006-11-12 01:12:57.0 +0200 @@ -80,8 +80,7 @@ //sometimes, angle==infinite (according to gdb) ?? GetSpeed(norme, angle); - while(angle < -M_PI) angle += M_PI; - while(angle > M_PI) angle -= M_PI; + angle = fmod(angle, M_PI); angle *= 180.0 / M_PI; angle /= 2.0; And #include By the way, there seem to be similarily unnecessary loops in src/graphic/sprite.cpp, src/map/ground.cpp, src/map/water.cpp Regards, Tuukka Hastrup -- -- Trying to catch me? Just follow up my Electric Fingerprints -- To help you: [EMAIL PROTECTED] http://www.iki.fi/Tuukka.Hastrup/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
On Sun, Nov 12, 2006 at 03:11:44AM +0200, Tuukka Hastrup wrote: > Hi, > I had a look at this bug and one simple fix you could at least do is > switch the possibly endless loops into an fmod function call. This would > reduce the severity of this bug significantly. I'm not sure I agree that this should be considered to reduce the severity; in the case where the value of angle is wrong by 306 orders of magnitude, there's insufficient precision to get a meaningful result with fmod or otherwise, so in practice this still may make the game unusable. Anyway, the submitter claims that there is a fix now for the underlying bug, but he's told me this only in a throwaway comment on IRC with no follow-up to the bug report, so I have no idea what that fix is or when it will be available for uploading. :P > --- src/weapon/gnu.cpp.orig 2006-11-12 01:08:13.0 +0200 > +++ src/weapon/gnu.cpp 2006-11-12 01:12:57.0 +0200 > @@ -80,8 +80,7 @@ >//sometimes, angle==infinite (according to gdb) ?? >GetSpeed(norme, angle); > - while(angle < -M_PI) angle += M_PI; > - while(angle > M_PI) angle -= M_PI; > + angle = fmod(angle, M_PI); >angle *= 180.0 / M_PI; >angle /= 2.0; > And #include > By the way, there seem to be similarily unnecessary loops in > src/graphic/sprite.cpp, src/map/ground.cpp, src/map/water.cpp Those do certainly seem to be worth fixing in their own right. Cheers, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. [EMAIL PROTECTED] http://www.debian.org/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
On Sun, Nov 12, 2006 at 03:11:44AM +0200, Tuukka Hastrup wrote: > - while(angle < -M_PI) angle += M_PI; > - while(angle > M_PI) angle -= M_PI; > + angle = fmod(angle, M_PI); This patch is simply wrong. What you want to do is to reduce the argument to [-pi, pi> (or <-pi, pi] if you want, it doesn't matter which side is inclusive), so you can represent the entire unit circle. In particular, you want pi+a (where a is a small positive number) to be reduced to (-pi)+a; your version reduces it to a. The issue gets meddled a bit by the fact that fmod(x, y) reduces x to be in the range <-y, y> (not [0, y> as one might expect), in a perhaps not entirely intuitive way (in general, fmod(-x, y) = -fmod(x, y) for positive x and y). So what you want is something more along the lines of angle = fmod(angle, 2.0*M_PI); // [0, 2pi> or <-2pi, 0], depending on // sign of ANGLE if (angle < 0.0) angle += 2.0*M_PI; // [0, 2pi> if (angle >= M_PI) angle -= 2.0*M_PI; // [-pi, pi> Untested, though, and you might want to change the "< 0.0" to "< -M_PI" to avoid stuff like -pi/2 to be moved up to the positive side and then back again. /* Steinar */ -- Homepage: http://www.sesse.net/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Steve Langasek wrote: > Anyway, the submitter claims that there is a fix now for the underlying bug, > but he's told me this only in a throwaway comment on IRC with no follow-up > to the bug report, so I have no idea what that fix is or when it will be > available for uploading. :P The bug is really fixed in our (Debian games Team) SVN, but I have no sponsor for the package. Still, I would like to make some small changes before an upload. Sorry for the lack of follow-up, I (currently) don't have internet access @ home, so I am constrained by office schedule and public transportation schedule. - -- Regards, EddyP = "Imagination is more important than knowledge" A.Einstein -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFWD2mY8Chqv3NRNoRAjfNAJ98ByIbn2x8vKKm9LSFZJ0TmUOAogCfZ6Zv r+ARzMXUdys72mbvvGe2eHE= =bZEM -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
Eddy Petrisor wrote: >Steve Langasek wrote: >> Anyway, the submitter claims that there is a fix now for the underlying bug, >> but he's told me this only in a throwaway comment on IRC with no follow-up >> to the bug report, so I have no idea what that fix is or when it will be >> available for uploading. :P > >The bug is really fixed in our (Debian games Team) SVN, but I have no >sponsor for the package. Still, I would like to make some small changes >before an upload. > >Sorry for the lack of follow-up, I (currently) don't have internet >access @ home, so I am constrained by office schedule and public >transportation schedule. If you're waiting on a sponsor, please let me know. I was helping people work on another bug in wormux at the BSP this weekend, and it would be nice to get the bugs fixed and uploaded. -- Steve McIntyre, Cambridge, UK.[EMAIL PROTECTED] Who needs computer imagery when you've got Brian Blessed? -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
Le 13.11.2006 10:40, Eddy Petrișor a écrit : -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Steve Langasek wrote: Anyway, the submitter claims that there is a fix now for the underlying bug, but he's told me this only in a throwaway comment on IRC with no follow-up to the bug report, so I have no idea what that fix is or when it will be available for uploading. :P The bug is really fixed in our (Debian games Team) SVN, but I have no sponsor for the package. Still, I would like to make some small changes before an upload. Hi all, Tony Mancill use to sponsor my Wormux packages. Jean Sorry for the lack of follow-up, I (currently) don't have internet access @ home, so I am constrained by office schedule and public transportation schedule. - -- Regards, EddyP = "Imagination is more important than knowledge" A.Einstein -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFWD2mY8Chqv3NRNoRAjfNAJ98ByIbn2x8vKKm9LSFZJ0TmUOAogCfZ6Zv r+ARzMXUdys72mbvvGe2eHE= =bZEM -END PGP SIGNATURE- ___ Pkg-games-devel mailing list Pkg-games-devel@lists.alioth.debian.org http://lists.alioth.debian.org/mailman/listinfo/pkg-games-devel -- _ / Autofocus mes fesses ! Y'a qu'à\ | demander au type qu'on va photographier | | d'avancer jusqu'à ce qu'il soit net. | | Vas-y Marcel ! -+- Philippe Geluck, Le | \ chat -+-/ - \ ^__^ \ (xx)\___ (__)\ )\/\ U ||w | || || -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 tony mancill wrote: > Cool - thanks! > tony > If the package is ready to upload, please let me know if you'd like to upload the source to mentors.debian.net, which is the mechanism we've used up until now, or if you'd prefer that I pull directly from you SVN repository. If the latter, please go ahead and tag the package and I'll use that tag for the upload. >> I will shout and give complete details when I have a prepared package. >> but I want to incorporate the patch for #395217 since an upload will be >> done. The package is ready for upload and can be found at http://pkg-games.alioth.debian.org/upload/wormux/ The urgency has been set to medium as it fixes 2 RC bugs, although I am not sure if this shouldn't have been high. Steve? Also, I have seen that wormux has been removed from testing, I hope this package will replace the missing one, right (i.e. Etch will release with wormux included in it)? - -- Regards, EddyP = "Imagination is more important than knowledge" A.Einstein -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFWd8kY8Chqv3NRNoRAvWAAJ9S4zapsnG21Kod1jEM3qoNEL38IACbBpyJ PY/ag5Yv+mH5etg/Fa9pBN4= =LVpp -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
On Tue, Nov 14, 2006 at 05:22:12PM +0200, Eddy Petrișor wrote: > If the package is ready to upload, please let me know if you'd like to > upload the source to mentors.debian.net, which is the mechanism we've > used > up until now, or if you'd prefer that I pull directly from you SVN > repository. If the latter, please go ahead and tag the package and I'll > use that tag for the upload. > >> I will shout and give complete details when I have a prepared package. > >> but I want to incorporate the patch for #395217 since an upload will be > >> done. > The package is ready for upload and can be found at > http://pkg-games.alioth.debian.org/upload/wormux/ > The urgency has been set to medium as it fixes 2 RC bugs, although I am > not sure if this shouldn't have been high. Steve? There is no authoritative policy on urgencies for such uploads. Since it was removed from testing, actually, the urgency of your upload will be ignored by britney. wormux is a candidate for being re-added to etch regardless, so if you see that it hasn't gotten back in by the time we freeze, please ping the release team. Cheers, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. [EMAIL PROTECTED] http://www.debian.org/
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Package: wormux Version: 0.7.4-1 Severity: critical Justification: breaks unrelated software Hello, I have found that wormux leads to a total halt and also halts X in the following context: - - start the game with two teams - - use the weapon GNU launcher after aiming at some scenery object - - the game will block when the gnu touches the aimed scenery - - the whole X session become unusable Note: I have tried to reproduce this on a testing (0.7.2-6) i386 machine, but I couldn't. I have tried also with 0.7.4-1 on the same i386 machine, the bug still doesn't appear. I suppose is a powerpc issue or (maybe) a r300 driver issue(?). - -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (900, 'unstable'), (100, 'experimental') Architecture: powerpc (ppc) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-1-powerpc Locale: LANG=ro_RO.UTF-8, LC_CTYPE=ro_RO.UTF-8 (charmap=UTF-8) Versions of packages wormux depends on: ii libc6 2.3.6.ds1-6 GNU C Library: Shared libraries ii libgcc11:4.1.1-16GCC support library ii libglib2.0-0 2.12.4-1 The GLib library of C routines ii libglibmm-2.4-1c2a 2.12.0-1 C++ wrapper for the GLib toolkit ( ii libsdl-gfx1.2-42.0.13-2 drawing and graphical effects exte ii libsdl-image1.21.2.5-2 image loading library for Simple D ii libsdl-mixer1.21.2.6-1.1+b1 mixer library for Simple DirectMed ii libsdl-net1.2 1.2.5-7 network library for Simple DirectM ii libsdl-ttf2.0-02.0.8-3 ttf library for Simple DirectMedia hi libsdl1.2debian1.2.11-4 Simple DirectMedia Layer ii libsigc++-2.0-0c2a 2.0.17-2 type-safe Signal Framework for C++ ii libstdc++6 4.1.1-16 The GNU Standard C++ Library v3 ii libxml++2.6-2 2.14.0-0.1A C++ interface to the GNOME XML l ii libxml22.6.26.dfsg-4 GNOME XML library ii wormux-data0.7.4-1 Data files for the game wormux wormux recommends no packages. - -- no debconf information -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFL4lPY8Chqv3NRNoRAqN+AJ42zkaFrxDyhIOAHc2J9nRL5+FR7QCfV22O o+6euAa9QSBVNI3BnlAM7hI= =Z/x8 -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
Can someone try to reproduce the bug ? Can we have some log of X or something to help ? Best regards, Jean Le 13.10.2006 14:40, Eddy Petrișor a écrit : -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Package: wormux Version: 0.7.4-1 Severity: critical Justification: breaks unrelated software Hello, I have found that wormux leads to a total halt and also halts X in the following context: - - start the game with two teams - - use the weapon GNU launcher after aiming at some scenery object - - the game will block when the gnu touches the aimed scenery - - the whole X session become unusable Note: I have tried to reproduce this on a testing (0.7.2-6) i386 machine, but I couldn't. I have tried also with 0.7.4-1 on the same i386 machine, the bug still doesn't appear. I suppose is a powerpc issue or (maybe) a r300 driver issue(?). - -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (900, 'unstable'), (100, 'experimental') Architecture: powerpc (ppc) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-1-powerpc Locale: LANG=ro_RO.UTF-8, LC_CTYPE=ro_RO.UTF-8 (charmap=UTF-8) Versions of packages wormux depends on: ii libc6 2.3.6.ds1-6 GNU C Library: Shared libraries ii libgcc11:4.1.1-16GCC support library ii libglib2.0-0 2.12.4-1 The GLib library of C routines ii libglibmm-2.4-1c2a 2.12.0-1 C++ wrapper for the GLib toolkit ( ii libsdl-gfx1.2-42.0.13-2 drawing and graphical effects exte ii libsdl-image1.21.2.5-2 image loading library for Simple D ii libsdl-mixer1.21.2.6-1.1+b1 mixer library for Simple DirectMed ii libsdl-net1.2 1.2.5-7 network library for Simple DirectM ii libsdl-ttf2.0-02.0.8-3 ttf library for Simple DirectMedia hi libsdl1.2debian1.2.11-4 Simple DirectMedia Layer ii libsigc++-2.0-0c2a 2.0.17-2 type-safe Signal Framework for C++ ii libstdc++6 4.1.1-16 The GNU Standard C++ Library v3 ii libxml++2.6-2 2.14.0-0.1A C++ interface to the GNOME XML l ii libxml22.6.26.dfsg-4 GNOME XML library ii wormux-data0.7.4-1 Data files for the game wormux wormux recommends no packages. - -- no debconf information -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFL4lPY8Chqv3NRNoRAqN+AJ42zkaFrxDyhIOAHc2J9nRL5+FR7QCfV22O o+6euAa9QSBVNI3BnlAM7hI= =Z/x8 -END PGP SIGNATURE- ___ Pkg-games-devel mailing list [EMAIL PROTECTED] http://lists.alioth.debian.org/mailman/listinfo/pkg-games-devel -- / (A Darwin qui lui expliquait que \ | l'homme descendait du singe) Mon Dieu, | | pourvu que cela ne se sache pas ! -+- | \ La reine Victoria -+- / \ ^__^ \ (==)\___ (__)\ )\/\ ||w | || || -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
Hi, Can you confirm that the bug only appear when in fullscreen mode or not ? Thank you, Jean Le 13.10.2006 14:40, Eddy Petrișor a écrit : -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Package: wormux Version: 0.7.4-1 Severity: critical Justification: breaks unrelated software Hello, I have found that wormux leads to a total halt and also halts X in the following context: - - start the game with two teams - - use the weapon GNU launcher after aiming at some scenery object - - the game will block when the gnu touches the aimed scenery - - the whole X session become unusable Note: I have tried to reproduce this on a testing (0.7.2-6) i386 machine, but I couldn't. I have tried also with 0.7.4-1 on the same i386 machine, the bug still doesn't appear. I suppose is a powerpc issue or (maybe) a r300 driver issue(?). - -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (900, 'unstable'), (100, 'experimental') Architecture: powerpc (ppc) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-1-powerpc Locale: LANG=ro_RO.UTF-8, LC_CTYPE=ro_RO.UTF-8 (charmap=UTF-8) Versions of packages wormux depends on: ii libc6 2.3.6.ds1-6 GNU C Library: Shared libraries ii libgcc11:4.1.1-16GCC support library ii libglib2.0-0 2.12.4-1 The GLib library of C routines ii libglibmm-2.4-1c2a 2.12.0-1 C++ wrapper for the GLib toolkit ( ii libsdl-gfx1.2-42.0.13-2 drawing and graphical effects exte ii libsdl-image1.21.2.5-2 image loading library for Simple D ii libsdl-mixer1.21.2.6-1.1+b1 mixer library for Simple DirectMed ii libsdl-net1.2 1.2.5-7 network library for Simple DirectM ii libsdl-ttf2.0-02.0.8-3 ttf library for Simple DirectMedia hi libsdl1.2debian1.2.11-4 Simple DirectMedia Layer ii libsigc++-2.0-0c2a 2.0.17-2 type-safe Signal Framework for C++ ii libstdc++6 4.1.1-16 The GNU Standard C++ Library v3 ii libxml++2.6-2 2.14.0-0.1A C++ interface to the GNOME XML l ii libxml22.6.26.dfsg-4 GNOME XML library ii wormux-data0.7.4-1 Data files for the game wormux wormux recommends no packages. - -- no debconf information -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFL4lPY8Chqv3NRNoRAqN+AJ42zkaFrxDyhIOAHc2J9nRL5+FR7QCfV22O o+6euAa9QSBVNI3BnlAM7hI= =Z/x8 -END PGP SIGNATURE- ___ Pkg-games-devel mailing list [EMAIL PROTECTED] http://lists.alioth.debian.org/mailman/listinfo/pkg-games-devel -- _ / L'Être Humain : "L'être humain a \ | tellement l'habitude de parler et de| | regarder, temps en temps les gens qui | | sont aveugles sont plus awares que les | | gens qui voillent, parce qu'ils sont| | obligés de sentir les sensations, les | | gens qu'ils aiment pas, qu'ils aiment | | bien, et les objets qui sont, et on est | \ aware." -+- Jean-Claude VanDamme -+-/ - \ ^__^ \ (**)\___ (__)\ )\/\ U ||w | || || -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Jean Parpaillon wrote: > Can someone try to reproduce the bug ? I have tried to see what is happening and seems to some sort of platform specific issue. I am not that skilled with assembler, but I think either the generated code is wrong or the FPU has some issues. The problem occurs at weapon/gnu.cpp:84. 82 83 while(angle < -M_PI) angle += M_PI; 84 while(angle > M_PI) angle -= M_PI; 85 86 angle *= 180.0 / M_PI; The code enters in an endless loop at that line but there seems to be no apparent reason for that. I have observed that the endless loop occurs if the gnu hits a wall which is inclined at such an angle that the gnu hits it with the head on the rising side of a jump. I will try to explain with some aiding ASCII drawing. \ \ __>__\ Assume ">" is the gnu which goes in the direction indicated by the sign. The game will enter an endless loop when it gets to the state indicated below. \ >\ _\ > Can we have some log of X or something to help ? The assembler code generated for line 84 is (the first 3 instructions are relevant): Dump of assembler code from 0x1009c2f0 to 0x1009c3f0: 0x1009c2f0 <_ZN3Gnu7RefreshEv+144>: fsubf1,f1,f0 0x1009c2f4 <_ZN3Gnu7RefreshEv+148>: fcmpu cr7,f1,f0 0x1009c2f8 <_ZN3Gnu7RefreshEv+152>: bgt+cr7,0x1009c2f0 <_ZN3Gnu7RefreshEv+144> 0x1009c2fc <_ZN3Gnu7RefreshEv+156>: lis r9,4107 0x1009c300 <_ZN3Gnu7RefreshEv+160>: lwz r0,396(r31) 0x1009c304 <_ZN3Gnu7RefreshEv+164>: lfd f13,168(r9) 0x1009c308 <_ZN3Gnu7RefreshEv+168>: lis r9,4107 Although the code (IMO) should do the decrementing of f1 (the register where the angle is stored) and set cr7 accordingly, it seems that the decrementing never occurs, as the listing below shows. The commands are the listed ones by DDD in its console. The first interrupt was done to define the regs macro which prints the values of the relevant registers and of the angle variable. The second interrupt was done after I managed to block the gnu. Note: Although I have assembler background experience, I don't have such experience with PowerPC assembler. I think a better skilled person at PowerPC assembler than myself should analyze the code and say if this is a GCC bug or a platform bug (at least that's what I think this problems seems to be). - --8< (gdb) run Starting program: /home/eddy/tmp/_eraseme/wormux/wormux-0.7.4/src/wormux [Thread debugging using libthread_db enabled] [New Thread 805451968 (LWP 5200)] === Versiunea Wormux 0.7.4 === Autori: Anthony CARRE, Jean-Christophe DUBERGA, Laurent DEFERT SIMONNEAU, Lawrence AZZOUG, Matthieu FERTRE, Olivier Boyer, Renaud LOTTIAUX, Victor STINNER === Situl web: http://www.wormux.org Wormux version 0.7.4, Copyright (C) 2001-2006 Wormux team Wormux comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. Read COPYING file for details. [ Rulează jocul ] [New Thread 816891104 (LWP 5203)] o Încărcare aspecte: ver, ecureuil, escargot, snortteam, alien, wilberteam, thunderbirdteam, nupikteam, workraveteam, tuxteam, gnuteam, poulpe, flament_rose, firefoxteam, phpteam, konqiteam o Încărcare echipe: ver, nuts, escargot, snortteam, alien, konquiteam, wilberteam, thunderbirdteam, nupikteam, workraveteam, tuxteam, gnuteam, poulpe, firefoxteam, phpteam, pink_floyd o Încărcare hărţi: mer, hell, noel, cowland, qingqong, arbre, leafs, grenouilles, space, prehistorik, catacombes, cheese, desert, halloween, island, araignee, electronik, aquarium, paradis, wildwestdv, champignon, battlenight, monkeybubbleworld, banquise, pirates, vulcano, goodandevil, libellule [New Thread 836637920 (LWP 5204)] open /dev/sequencer: No such device Opened audio at 44100 Hz 16 bit Continuing. ^C Program received signal SIGINT, Interrupt. 0x0f7e536c in poll () from /lib/tls/libc.so.6 (gdb) define regs Type commands for definition of "regs". End with a line saying just "end". >print $f1 >print $f0 >print $cr >print $cr7 >print angle >stepi >end (gdb) cont Continuing. [ Se începe un nou joc ] Loading game... => Splashscreen is TODO o Iniţializare o Se caută o pozitie aleatoare pentru personaje o Iniţializare teren... finalizat o Iniţializare obiecte ^C Program received signal SIGINT, Interrupt. 0x1009c2f0 in Gnu::Refresh (this=0x103138a8) at weapon/gnu.cpp:84 /home/eddy/tmp/_eraseme/wormux/wormux-0.7.4/src/weapon/gnu.cpp:84:2505:beg:0x1009c2f0 (gdb) regs main $1 = 3.1826378988422823e+306 $2 = 3.1415926535897931 $3 = 570426500 $4 = void $5 = 3.1826378988422823e+306 (gdb) regs main $6 = 3.1826378988422823e+306 $7 = 3.1415926535897931 $8 = 570426500 $9 = void $10 = 3.1826378988422823e+306 (gdb) regs main $11 = 3.1826378988422823e+306 $12 = 3.1415926535897931 $13 = 570426500 $14 = void $15 = 3.1826378988422823e+306 (gdb) regs main $16 = 3.1826378988422823e+306 $17 = 3.1415926535897931 $18
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Jean Parpaillon wrote: > Hi, > Can you confirm that the bug only appear when in fullscreen mode or not ? i have sent an email that explains better the issue after the analysis I did on Saturday. Sorry for the lag, but I was off-line during the weekend, as always lately. PS: top posting is rude, please answer inline - -- Regards, EddyP = "Imagination is more important than knowledge" A.Einstein -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFM4hlY8Chqv3NRNoRAoNHAKDS8V8PT4CIcCOb+4Xabc8rCxDCBACgmZEI FruqM5aiLcCkbbg0Puf8PWA= =1qEB -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
Hi Eddy, Can you still reproduce this bug now that Xorg 7.1 has reached testing? FWIW, there is no bug in the assembly that you've cited. The problem is with the initial value of 'angle': $5 = 3.1826378988422823e+306 This number is so large that subtracting pi from it as a floating point number gives you the same number -- there's not enough precision to record a difference of 3.14 between two numbers on the order of 10^306! (And even if it could, it would take a horribly long time to reach the desired value!) So the question is, how is angle being set to a value so high? If that's expected behavior, then this code needs to get the value down into the desired range using something better than subtraction/addition. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. [EMAIL PROTECTED] http://www.debian.org/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#392774: wormux: blocks the whole X session when GNU touches the first object
Subject: wormux: bug is still visible, even with current X.org Followup-For: Bug #392774 Package: wormux Version: 0.7.4-1 Hello, Steve, thanks for the additional info, I didn't realised the value was e+306 until you pointed it out. I will look into the physics engine to see what is wrong and try to understand what is wrong. It appears that upstream is quite aware of the issue that it exists, but they don't know why it happens: -8<--- //Due to a bug in the physic engine //sometimes, angle==infinite (according to gdb) ?? GetSpeed(norme, angle); while(angle < -M_PI) angle += M_PI; while(angle > M_PI) angle -= M_PI; -8<--- -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (900, 'unstable') Architecture: powerpc (ppc) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-1-powerpc Locale: LANG=ro_RO.UTF-8, LC_CTYPE=ro_RO.UTF-8 (charmap=UTF-8) Versions of packages wormux depends on: ii libc6 2.3.6.ds1-7 GNU C Library: Shared libraries ii libgcc11:4.1.1-17GCC support library ii libglib2.0-0 2.12.4-1 The GLib library of C routines ii libglibmm-2.4-1c2a 2.12.0-1 C++ wrapper for the GLib toolkit ( ii libsdl-gfx1.2-42.0.13-2 drawing and graphical effects exte ii libsdl-image1.21.2.5-2 image loading library for Simple D ii libsdl-mixer1.21.2.6-1.1+b1 mixer library for Simple DirectMed ii libsdl-net1.2 1.2.5-7 network library for Simple DirectM ii libsdl-ttf2.0-02.0.8-3 ttf library for Simple DirectMedia hi libsdl1.2debian1.2.11-4 Simple DirectMedia Layer ii libsigc++-2.0-0c2a 2.0.17-2 type-safe Signal Framework for C++ ii libstdc++6 4.1.1-17 The GNU Standard C++ Library v3 ii libxml++2.6-2 2.14.0-0.1A C++ interface to the GNOME XML l ii libxml22.6.26.dfsg-4 GNOME XML library ii wormux-data0.7.4-1 Data files for the game wormux wormux recommends no packages. -- no debconf information -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]