Your message dated Wed, 02 Aug 2006 03:47:34 -0700
with message-id <[EMAIL PROTECTED]>
and subject line Bug#380404: fixed in amphetamine 0.8.10-11
has caused the attached Bug report to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere. Please contact me immediately.)
Debian bug tracking system administrator
(administrator, Debian Bugs database)
--- Begin Message ---
Package: amphetamine
Version: 0.8.10-10
Tags: patch
amphetamine (on amd64) segfaults on activation of a teleport object. The
cause is an assumption about the size of long and unsigned long.
--
| Darren Salt | linux or ds at | nr. Ashington, | Toon
| RISC OS, Linux | youmustbejoking,demon,co,uk | Northumberland | Army
| + Output less CO2 => avoid massive flooding. TIME IS RUNNING OUT *FAST*.
Everybody should believe in something... I believe I'll have another drink.
--- amphetamine-0.8.10.orig/src/Shape.cpp
+++ amphetamine-0.8.10/src/Shape.cpp
@@ -56,12 +56,12 @@
*/
#ifdef __OPT_MEM_ACCESS__
-#define GET_LONG(adr) *(unsigned long *)adr
-#define SET_LONG(adr, l) *(unsigned long *)adr = l
+#define GET_LONG(adr) *(uint32_t *)adr
+#define SET_LONG(adr, l) *(uint32_t *)adr = l
#else
-#define GET_LONG(adr) ((long)((unsigned char *)(adr))[0] << 24) +
((long)((unsigned char *)(adr))[1] << 16) + ((long)((unsigned char *)(adr))[2]
<< 8) + ((long)((unsigned char *)(adr))[3])
+#define GET_LONG(adr) ((uint32_t)((unsigned char *)(adr))[0] << 24) +
((uint32_t)((unsigned char *)(adr))[1] << 16) + ((uint32_t)((unsigned char
*)(adr))[2] << 8) + ((uint32_t)((unsigned char *)(adr))[3])
#define SET_LONG(adr, l) ((unsigned char *)adr)[0] = (unsigned char)((l)
>> 24); \
((unsigned char *)adr)[1] = (unsigned char)((l)
>> 16); \
((unsigned char *)adr)[2] = (unsigned char)((l)
>> 8); \
@@ -116,7 +116,7 @@
{
// store the location of this line start
lineStartPtr = destPtr;
- destPtr += sizeof( unsigned long );
+ destPtr += sizeof( uint32_t );
// at the beginning of each row we are not in any run
drawRunFlag = kFalse;
@@ -160,7 +160,7 @@
//
create the skip token
//*( (
unsigned long * )destPtr ) = ( kSkipPixelsToken << 24 ) + runCounter;
SET_LONG(destPtr, ( kSkipPixelsToken << 24 ) + runCounter);
- destPtr
+= sizeof( unsigned long );
+ destPtr
+= sizeof( uint32_t );
}
// are we in a draw run
@@ -179,7 +179,7 @@
// save
the location of the token (so we can fill it in later)
runTokenPtr = destPtr;
- destPtr
+= sizeof( unsigned long );
+ destPtr
+= sizeof( uint32_t );
// copy
the pixel
*destPtr = *srcPtr;
@@ -215,7 +215,7 @@
// create the end of shape token
SET_LONG(destPtr, kEndShapeToken << 24);
- destPtr += sizeof( unsigned long );
+ destPtr += sizeof( uint32_t );
// Resize the handle to match the real size of the shape
//SetHandleSize( shapeHandle, destPtr - ( unsigned char * )(
*shapeHandle ) );
@@ -280,7 +280,7 @@
// get a token
tokenOp = GET_LONG(srcPtr ) >> 24;
tokenData = GET_LONG(srcPtr ) & 0x00ffffff;
- srcPtr += sizeof( unsigned long );
+ srcPtr += sizeof( uint32_t );
// depending on the token
switch( tokenOp )
@@ -435,7 +435,7 @@
// get a token
tokenOp = GET_LONG(srcPtr) >> 24;
tokenData = GET_LONG(srcPtr) & 0x00ffffff;
- srcPtr += sizeof( unsigned long );
+ srcPtr += sizeof( uint32_t );
// depending on the token
switch( tokenOp )
--- End Message ---
--- Begin Message ---
Source: amphetamine
Source-Version: 0.8.10-11
We believe that the bug you reported is fixed in the latest version of
amphetamine, which is due to be installed in the Debian FTP archive:
amphetamine_0.8.10-11.diff.gz
to pool/main/a/amphetamine/amphetamine_0.8.10-11.diff.gz
amphetamine_0.8.10-11.dsc
to pool/main/a/amphetamine/amphetamine_0.8.10-11.dsc
amphetamine_0.8.10-11_i386.deb
to pool/main/a/amphetamine/amphetamine_0.8.10-11_i386.deb
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Sam Hocevar (Debian packages) <[EMAIL PROTECTED]> (supplier of updated
amphetamine package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.7
Date: Wed, 2 Aug 2006 11:11:24 +0200
Source: amphetamine
Binary: amphetamine
Architecture: source i386
Version: 0.8.10-11
Distribution: unstable
Urgency: low
Maintainer: Debian Games Team <[EMAIL PROTECTED]>
Changed-By: Sam Hocevar (Debian packages) <[EMAIL PROTECTED]>
Description:
amphetamine - jump'n run game with unique visual effects
Closes: 380404
Changes:
amphetamine (0.8.10-11) unstable; urgency=low
.
[ Sam Hocevar ]
* debian/patches/020_assumed_sizeof_long.diff:
+ New patch, courtesy of Darren Salt: fix wrong assumption that long is
a 32 bit type (Closes: #380404).
.
[ Eddy PetriÈor ]
* fixed watch file
* added a link to the upstream homepage
Files:
0f117159f3c620e058514417850103dd 734 games optional amphetamine_0.8.10-11.dsc
ca1f41c1949810beff4ffb116ef14bcc 9422 games optional
amphetamine_0.8.10-11.diff.gz
89cd18a37e8b7d92541ab317e19ac234 99806 games optional
amphetamine_0.8.10-11_i386.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
iD8DBQFE0Hy3fPP1rylJn2ERAmFHAJ4ka3portaA6zc0drYTuyYSLPanrgCgn15K
vxDChjGV/QBqNDEeIvkNFDw=
=XF9N
-----END PGP SIGNATURE-----
--- End Message ---