Package: mozilla-firefox
Version: 1.0.2-1
Severity: normal
Tags: patch
See this upstream bugreport for details:
https://bugzilla.mozilla.org/show_bug.cgi?id=289394
For convenience, I'm attaching the patch to fix this problem below.
Thanks.
-- System Information:
Debian Release: 3.1
APT prefers testing
APT policy: (500, 'testing'), (50, 'unstable')
Architecture: ia64
Kernel: Linux 2.6.11
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Versions of packages mozilla-firefox depends on:
ii debianutils 2.8.4 Miscellaneous utilities specific t
ii fontconfig 2.3.1-2 generic font configuration library
ii libatk1.0-0 1.8.0-4 The ATK accessibility toolkit
ii libc6.1 2.3.2.ds1-20 GNU C Library: Shared libraries an
ii libfontconfig1 2.3.1-2 generic font configuration library
ii libfreetype6 2.1.7-2.3 FreeType 2 font engine, shared lib
ii libgcc1 1:3.4.3-12 GCC support library
ii libglib2.0-0 2.6.3-1 The GLib library of C routines
ii libgtk2.0-0 2.6.2-4 The GTK+ graphical user interface
ii libidl0 0.8.5-1 library for parsing CORBA IDL file
ii libjpeg62 6b-9 The Independent JPEG Group's JPEG
ii libkrb53 1.3.6-1 MIT Kerberos runtime libraries
ii libpango1.0-0 1.8.1-1 Layout and rendering of internatio
ii libpng12-0 1.2.8rel-1 PNG library - runtime
ii libstdc++5 1:3.3.5-8 The GNU Standard C++ Library v3
ii libx11-6 4.3.0.dfsg.1-12 X Window System protocol client li
ii libxext6 4.3.0.dfsg.1-12 X Window System miscellaneous exte
ii libxft2 2.1.2-6 FreeType-based font drawing librar
ii libxp6 4.3.0.dfsg.1-12 X Window System printing extension
ii libxt6 4.3.0.dfsg.1-12 X Toolkit Intrinsics
ii psmisc 21.5-1 Utilities that use the proc filesy
ii xlibs 4.3.0.dfsg.1-12 X Keyboard Extension (XKB) configu
ii zlib1g 1:1.2.2-3 compression library - runtime
-- no debconf information
diff -urN mozilla-firefox-1.0.2/extensions/transformiix/source/base/Double.cpp
mozilla-firefox-1.0.2-fixed/extensions/transformiix/source/base/Double.cpp
--- mozilla-firefox-1.0.2/extensions/transformiix/source/base/Double.cpp
2004-01-15 13:23:18.000000000 -0800
+++ mozilla-firefox-1.0.2-fixed/extensions/transformiix/source/base/Double.cpp
2005-04-06 22:27:28.000000000 -0700
@@ -74,14 +74,7 @@
#define CPU_IS_ARM
#endif
-#if (__GNUC__ == 2 && __GNUC_MINOR__ > 95) || __GNUC__ > 2
-/**
- * This version of the macros is safe for the alias optimizations
- * that gcc does, but uses gcc-specific extensions.
- */
-
typedef union txdpun {
- PRFloat64 d;
struct {
#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM)
PRUint32 lo, hi;
@@ -89,8 +82,14 @@
PRUint32 hi, lo;
#endif
} s;
+ PRFloat64 d;
} txdpun;
+#if (__GNUC__ == 2 && __GNUC_MINOR__ > 95) || __GNUC__ > 2
+/**
+ * This version of the macros is safe for the alias optimizations
+ * that gcc does, but uses gcc-specific extensions.
+ */
#define TX_DOUBLE_HI32(x) (__extension__ ({ txdpun u; u.d = (x); u.s.hi; }))
#define TX_DOUBLE_LO32(x) (__extension__ ({ txdpun u; u.d = (x); u.s.lo; }))
@@ -116,15 +115,15 @@
//-- Initialize Double related constants
#ifdef IS_BIG_ENDIAN
-const PRUint32 nanMask[2] = {TX_DOUBLE_HI32_EXPMASK |
TX_DOUBLE_HI32_MANTMASK,
+const txdpun nanMask = {TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_MANTMASK,
0xffffffff};
-const PRUint32 infMask[2] = {TX_DOUBLE_HI32_EXPMASK, 0};
-const PRUint32 negInfMask[2] = {TX_DOUBLE_HI32_EXPMASK |
TX_DOUBLE_HI32_SIGNBIT, 0};
+const txdpun infMask = {TX_DOUBLE_HI32_EXPMASK, 0};
+const txdpun negInfMask = {TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_SIGNBIT, 0};
#else
-const PRUint32 nanMask[2] = {0xffffffff,
+const txdpun nanMask[2] = {0xffffffff,
TX_DOUBLE_HI32_EXPMASK |
TX_DOUBLE_HI32_MANTMASK};
-const PRUint32 infMask[2] = {0, TX_DOUBLE_HI32_EXPMASK};
-const PRUint32 negInfMask[2] = {0, TX_DOUBLE_HI32_EXPMASK |
TX_DOUBLE_HI32_SIGNBIT};
+const txdpun infMask[2] = {0, TX_DOUBLE_HI32_EXPMASK};
+const txdpun negInfMask[2] = {0, TX_DOUBLE_HI32_EXPMASK |
TX_DOUBLE_HI32_SIGNBIT};
#endif
const double Double::NaN = *((double*)nanMask);