patches/qt47/webkit05-17.diff
author jurikm
Sun, 12 Feb 2012 14:04:10 +0000
changeset 8245 383896da4129
parent 3064 6f76bdc54801
permissions -rw-r--r--
SFEsauerbraten.spec: add IPS package name
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3064
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
     1
From 5a28b84746b15ec9fd666238a01f1d8a3291b71b Mon Sep 17 00:00:00 2001
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
     2
From: Thiago Macieira <[email protected]>
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
     3
Date: Thu, 23 Jul 2009 17:11:23 +0200
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
     4
Subject: [PATCH 05/17] Fix crash misaligned reads on Sparc processors.
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
     5
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
     6
Sparc cannot do 32-bit reads on misaligned boundaries. The program
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
     7
crashes if you try to do so.
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
     8
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
     9
t@1 (l@1) signal BUS (invalid address alignment) in WebCore::equal at 0xffffffff7e2719fc
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    10
0xffffffff7e2719fc: equal+0x002c:       ld       [%o1], %g1
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    11
(dbx) where -q 1
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    12
=>[1] WebCore::equal(WebCore::StringImpl*,const unsigned short*,unsigned)
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    13
(dbx) print -fx $o1
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    14
$o1 = 0x45d15a
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    15
---
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    16
 .../webkit/WebCore/platform/text/AtomicString.cpp  |    2 +-
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    17
 1 files changed, 1 insertions(+), 1 deletions(-)
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    18
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    19
--- a/src/3rdparty/webkit/WebCore/platform/text/AtomicString.cpp.orig	2010-07-09 00:26:39.247786047 +0200
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    20
+++ b/src/3rdparty/webkit/WebCore/platform/text/AtomicString.cpp	2010-07-09 00:28:42.170006407 +0200
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    21
@@ -105,7 +105,7 @@
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    22
 
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    23
     // FIXME: perhaps we should have a more abstract macro that indicates when
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    24
     // going 4 bytes at a time is unsafe
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    25
-#if CPU(ARM) || CPU(SH4)
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    26
+#if CPU(ARM) || CPU(SH4) || CPU(SPARC)
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    27
     const UChar* stringCharacters = string->characters();
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    28
     for (unsigned i = 0; i != length; ++i) {
6f76bdc54801 experimental/SFEqt47: add 40 patches enabling WebKit etc.; create qmake.conf for solaris-cc-stdcxx
viskov
parents:
diff changeset
    29
         if (*stringCharacters++ != *characters++)