<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>51144</bug_id>
          
          <creation_ts>2010-12-15 15:25:05 -0800</creation_ts>
          <short_desc>Clang -Wcast-align gives an error in WebBasePluginPackage.mm</short_desc>
          <delta_ts>2010-12-21 10:51:32 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Plug-ins</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Cameron Zwarich (cpst)">zwarich</reporter>
          <assigned_to name="Cameron Zwarich (cpst)">zwarich</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>322863</commentid>
    <comment_count>0</comment_count>
    <who name="Cameron Zwarich (cpst)">zwarich</who>
    <bug_when>2010-12-15 15:25:05 -0800</bug_when>
    <thetext>Clang -Wcast-align gives an error in WebBasePluginPackage.mm. This is the only error, so we might as well fix it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>322978</commentid>
    <comment_count>1</comment_count>
      <attachid>76716</attachid>
    <who name="Cameron Zwarich (cpst)">zwarich</who>
    <bug_when>2010-12-15 17:34:56 -0800</bug_when>
    <thetext>Created attachment 76716
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>323036</commentid>
    <comment_count>2</comment_count>
    <who name="Cameron Zwarich (cpst)">zwarich</who>
    <bug_when>2010-12-15 20:35:27 -0800</bug_when>
    <thetext>Fixed in r74172.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>323463</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-12-16 15:37:59 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/74172 might have broken Leopard Intel Debug (Tests)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>324970</commentid>
    <comment_count>4</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-12-21 05:53:04 -0800</bug_when>
    <thetext>Since this patch is in, I can&apos;t use DRT on Leopard anymore:

Exception Codes: KERN_INVALID_ADDRESS at 0x00000000bbadbeef
Crashed Thread:  0

Thread 0 Crashed:
0   com.apple.WebKit              	0x00d50a34 WTF::VectorBufferBase&lt;unsigned int&gt;::allocateBuffer(unsigned long) + 38 (Vector.h:286)
1   com.apple.WebKit              	0x00d50a9b WTF::VectorBuffer&lt;unsigned int, 128ul&gt;::VectorBuffer(unsigned long) + 67
2   com.apple.WebKit              	0x00d50acd WTF::Vector&lt;unsigned int, 128ul&gt;::Vector(unsigned long) + 47
3   com.apple.WebKit              	0x00d4ecc5 -[WebBasePluginPackage isNativeLibraryData:] + 69 (WebBasePluginPackage.mm:356)
4   com.apple.WebKit              	0x00df1e18 -[WebPluginPackage initWithPath:] + 550 (WebPluginPackage.mm:67)
5   com.apple.WebKit              	0x00d4e9b0 +[WebBasePluginPackage pluginWithPath:] + 72 (WebBasePluginPackage.mm:79)
6   com.apple.WebKit              	0x00defcf4 -[WebPluginDatabase(Internal) _scanForNewPlugins] + 442 (WebPluginDatabase.mm:488)
7   com.apple.WebKit              	0x00df0980 -[WebPluginDatabase refresh] + 192 (WebPluginDatabase.mm:272)
8   com.apple.WebKit              	0x00df1121 +[WebPluginDatabase sharedDatabase] + 189 (WebPluginDatabase.mm:72)
9   DumpRenderTree                	0x00012f28 __ZL32addTestPluginsToPluginSearchPathPKc + 146
10  DumpRenderTree                	0x0001651f dumpRenderTree(int, char const**) + 43
11  DumpRenderTree                	0x00016874 main + 94 (DumpRenderTree.mm:711)
12  DumpRenderTree                	0x00002b6a start + 54</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>324971</commentid>
    <comment_count>5</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-12-21 05:53:21 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Since this patch is in, I can&apos;t use DRT on Leopard anymore:
To clarify, it crashes on every test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>324973</commentid>
    <comment_count>6</comment_count>
      <attachid>76716</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-12-21 06:09:18 -0800</bug_when>
    <thetext>Comment on attachment 76716
Proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=76716&amp;action=review

&gt; WebKit/mac/Plugins/WebBasePluginPackage.mm:355
&gt; +    NSUInteger sizeInBytes = [data length];
&gt; +    Vector&lt;uint32_t, 128&gt; rawData((sizeInBytes - 1) / 4 + 1);

This silently assumes sizeInBytes &gt; 0. The crash I see happens with sizeInBytes=0.
So using sizeInBytes &gt; 0 ? ((sizeInBytes - 1) / 4 + 1) : 0, should fix the problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>325072</commentid>
    <comment_count>7</comment_count>
    <who name="Cameron Zwarich (cpst)">zwarich</who>
    <bug_when>2010-12-21 10:51:32 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 76716 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=76716&amp;action=review
&gt; 
&gt; &gt; WebKit/mac/Plugins/WebBasePluginPackage.mm:355
&gt; &gt; +    NSUInteger sizeInBytes = [data length];
&gt; &gt; +    Vector&lt;uint32_t, 128&gt; rawData((sizeInBytes - 1) / 4 + 1);
&gt; 
&gt; This silently assumes sizeInBytes &gt; 0. The crash I see happens with sizeInBytes=0.
&gt; So using sizeInBytes &gt; 0 ? ((sizeInBytes - 1) / 4 + 1) : 0, should fix the problem.

r=me on that, I was going to land this fix myself</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>76716</attachid>
            <date>2010-12-15 17:34:56 -0800</date>
            <delta_ts>2010-12-21 06:09:18 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>align.patch</filename>
            <type>text/plain</type>
            <size>4581</size>
            <attacher name="Cameron Zwarich (cpst)">zwarich</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9tYWMvUGx1Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJLaXQvbWFjL1BsdWdpbnMvV2ViQmFzZVBsdWdpblBhY2thZ2UubW0JKHJldmlz
aW9uIDc0MTM2KQorKysgV2ViS2l0L21hYy9QbHVnaW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLm1t
CSh3b3JraW5nIGNvcHkpCkBAIC0zNDMsMzEgKzM0MywzMiBAQAogICAgICAgICBlcXVhbElnbm9y
aW5nQ2FzZShwbHVnaW5JbmZvLmZpbGUsIEphdmFDRk1QbHVnaW5GaWxlbmFtZSk7CiB9CiAKLXN0
YXRpYyBpbmxpbmUgdm9pZCBzd2FwSW50c0luSGVhZGVyKHVpbnQ4X3QqIGJ5dGVzLCB1bnNpZ25l
ZCBsZW5ndGgpCitzdGF0aWMgaW5saW5lIHZvaWQgc3dhcEludHNJbkhlYWRlcih1aW50MzJfdCog
cmF3RGF0YSwgc2l6ZV90IGxlbmd0aCkKIHsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwg
bGVuZ3RoOyBpICs9IDQpIAotICAgICAgICAqKHVpbnQzMl90KikoYnl0ZXMgKyBpKSA9IE9TU3dh
cEludDMyKCoodWludDMyX3QgKikoYnl0ZXMgKyBpKSk7CisgICAgZm9yIChzaXplX3QgaSA9IDA7
IGkgPCBsZW5ndGg7ICsraSkgCisgICAgICAgIHJhd0RhdGFbaV0gPSBPU1N3YXBJbnQzMihyYXdE
YXRhW2ldKTsKIH0KIAogLSAoQk9PTClpc05hdGl2ZUxpYnJhcnlEYXRhOihOU0RhdGEgKilkYXRh
CiB7Ci0gICAgVmVjdG9yPHVpbnQ4X3QsIDUxMj4gYnl0ZXMoW2RhdGEgbGVuZ3RoXSk7Ci0gICAg
bWVtY3B5KGJ5dGVzLmRhdGEoKSwgW2RhdGEgYnl0ZXNdLCBieXRlcy5zaXplKCkpOworICAgIE5T
VUludGVnZXIgc2l6ZUluQnl0ZXMgPSBbZGF0YSBsZW5ndGhdOworICAgIFZlY3Rvcjx1aW50MzJf
dCwgMTI4PiByYXdEYXRhKChzaXplSW5CeXRlcyAtIDEpIC8gNCArIDEpOworICAgIG1lbWNweShy
YXdEYXRhLmRhdGEoKSwgW2RhdGEgYnl0ZXNdLCBzaXplSW5CeXRlcyk7CiAgICAgCiAgICAgdW5z
aWduZWQgbnVtQXJjaHMgPSAwOwogICAgIHN0cnVjdCBmYXRfYXJjaCBzaW5nbGVBcmNoID0geyAw
LCAwLCAwLCAwLCAwIH07CiAgICAgc3RydWN0IGZhdF9hcmNoKiBhcmNocyA9IDA7CiAgICAgICAg
Ci0gICAgaWYgKGJ5dGVzLnNpemUoKSA+PSBzaXplb2Yoc3RydWN0IG1hY2hfaGVhZGVyXzY0KSkg
ewotICAgICAgICB1aW50MzJfdCBtYWdpYyA9ICpyZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4o
Ynl0ZXMuZGF0YSgpKTsKKyAgICBpZiAoc2l6ZUluQnl0ZXMgPj0gc2l6ZW9mKHN0cnVjdCBtYWNo
X2hlYWRlcl82NCkpIHsKKyAgICAgICAgdWludDMyX3QgbWFnaWMgPSAqcmF3RGF0YS5kYXRhKCk7
CiAgICAgICAgIAogICAgICAgICBpZiAobWFnaWMgPT0gTUhfTUFHSUMgfHwgbWFnaWMgPT0gTUhf
Q0lHQU0pIHsKICAgICAgICAgICAgIC8vIFdlIGhhdmUgYSAzMi1iaXQgdGhpbiBiaW5hcnkKLSAg
ICAgICAgICAgIHN0cnVjdCBtYWNoX2hlYWRlciogaGVhZGVyID0gKHN0cnVjdCBtYWNoX2hlYWRl
ciopYnl0ZXMuZGF0YSgpOworICAgICAgICAgICAgc3RydWN0IG1hY2hfaGVhZGVyKiBoZWFkZXIg
PSAoc3RydWN0IG1hY2hfaGVhZGVyKilyYXdEYXRhLmRhdGEoKTsKIAogICAgICAgICAgICAgLy8g
Q2hlY2sgaWYgd2UgbmVlZCB0byBzd2FwIHRoZSBieXRlcwogICAgICAgICAgICAgaWYgKG1hZ2lj
ID09IE1IX0NJR0FNKQotICAgICAgICAgICAgICAgIHN3YXBJbnRzSW5IZWFkZXIoYnl0ZXMuZGF0
YSgpLCBieXRlcy5zaXplKCkpOworICAgICAgICAgICAgICAgIHN3YXBJbnRzSW5IZWFkZXIocmF3
RGF0YS5kYXRhKCksIHJhd0RhdGEuc2l6ZSgpKTsKICAgICAKICAgICAgICAgICAgIHNpbmdsZUFy
Y2guY3B1dHlwZSA9IGhlYWRlci0+Y3B1dHlwZTsKICAgICAgICAgICAgIHNpbmdsZUFyY2guY3B1
c3VidHlwZSA9IGhlYWRlci0+Y3B1c3VidHlwZTsKQEAgLTM3NiwxMSArMzc3LDExIEBACiAgICAg
ICAgICAgICBudW1BcmNocyA9IDE7CiAgICAgICAgIH0gZWxzZSBpZiAobWFnaWMgPT0gTUhfTUFH
SUNfNjQgfHwgbWFnaWMgPT0gTUhfQ0lHQU1fNjQpIHsKICAgICAgICAgICAgIC8vIFdlIGhhdmUg
YSA2NC1iaXQgdGhpbiBiaW5hcnkKLSAgICAgICAgICAgIHN0cnVjdCBtYWNoX2hlYWRlcl82NCog
aGVhZGVyID0gKHN0cnVjdCBtYWNoX2hlYWRlcl82NCopYnl0ZXMuZGF0YSgpOworICAgICAgICAg
ICAgc3RydWN0IG1hY2hfaGVhZGVyXzY0KiBoZWFkZXIgPSAoc3RydWN0IG1hY2hfaGVhZGVyXzY0
KilyYXdEYXRhLmRhdGEoKTsKIAogICAgICAgICAgICAgLy8gQ2hlY2sgaWYgd2UgbmVlZCB0byBz
d2FwIHRoZSBieXRlcwogICAgICAgICAgICAgaWYgKG1hZ2ljID09IE1IX0NJR0FNXzY0KQotICAg
ICAgICAgICAgICAgIHN3YXBJbnRzSW5IZWFkZXIoYnl0ZXMuZGF0YSgpLCBieXRlcy5zaXplKCkp
OworICAgICAgICAgICAgICAgIHN3YXBJbnRzSW5IZWFkZXIocmF3RGF0YS5kYXRhKCksIHJhd0Rh
dGEuc2l6ZSgpKTsKICAgICAgICAgICAgIAogICAgICAgICAgICAgc2luZ2xlQXJjaC5jcHV0eXBl
ID0gaGVhZGVyLT5jcHV0eXBlOwogICAgICAgICAgICAgc2luZ2xlQXJjaC5jcHVzdWJ0eXBlID0g
aGVhZGVyLT5jcHVzdWJ0eXBlOwpAQCAtMzkyLDEyICszOTMsMTIgQEAKIAogICAgICAgICAgICAg
Ly8gQ2hlY2sgaWYgd2UgbmVlZCB0byBzd2FwIHRoZSBieXRlcwogICAgICAgICAgICAgaWYgKG1h
Z2ljID09IEZBVF9DSUdBTSkKLSAgICAgICAgICAgICAgICBzd2FwSW50c0luSGVhZGVyKGJ5dGVz
LmRhdGEoKSwgYnl0ZXMuc2l6ZSgpKTsKKyAgICAgICAgICAgICAgICBzd2FwSW50c0luSGVhZGVy
KHJhd0RhdGEuZGF0YSgpLCByYXdEYXRhLnNpemUoKSk7CiAgICAgICAgICAgICAKLSAgICAgICAg
ICAgIGFyY2hzID0gKHN0cnVjdCBmYXRfYXJjaCopKGJ5dGVzLmRhdGEoKSArIHNpemVvZihzdHJ1
Y3QgZmF0X2hlYWRlcikpOyAgICAgICAgICAgIAotICAgICAgICAgICAgbnVtQXJjaHMgPSAoKHN0
cnVjdCBmYXRfaGVhZGVyICopYnl0ZXMuZGF0YSgpKS0+bmZhdF9hcmNoOworICAgICAgICAgICAg
YXJjaHMgPSAoc3RydWN0IGZhdF9hcmNoKikocmF3RGF0YS5kYXRhKCkgKyBzaXplb2Yoc3RydWN0
IGZhdF9oZWFkZXIpKTsgICAgICAgICAgICAKKyAgICAgICAgICAgIG51bUFyY2hzID0gKChzdHJ1
Y3QgZmF0X2hlYWRlciAqKXJhd0RhdGEuZGF0YSgpKS0+bmZhdF9hcmNoOwogICAgICAgICAgICAg
Ci0gICAgICAgICAgICB1bnNpZ25lZCBtYXhBcmNocyA9IChieXRlcy5zaXplKCkgLSBzaXplb2Yo
c3RydWN0IGZhdF9oZWFkZXIpKSAvIHNpemVvZihzdHJ1Y3QgZmF0X2FyY2gpOworICAgICAgICAg
ICAgdW5zaWduZWQgbWF4QXJjaHMgPSAoc2l6ZUluQnl0ZXMgLSBzaXplb2Yoc3RydWN0IGZhdF9o
ZWFkZXIpKSAvIHNpemVvZihzdHJ1Y3QgZmF0X2FyY2gpOwogICAgICAgICAgICAgaWYgKG51bUFy
Y2hzID4gbWF4QXJjaHMpCiAgICAgICAgICAgICAgICAgbnVtQXJjaHMgPSBtYXhBcmNoczsKICAg
ICAgICAgfSAgICAgICAgICAgIApJbmRleDogV2ViS2l0L21hYy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDc0MTM2KQorKysgV2ViS2l0L21h
Yy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyMCBAQAorMjAxMC0xMi0xNSAg
Q2FtZXJvbiBad2FyaWNoICA8endhcmljaEBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ2xhbmcgLVdjYXN0LWFsaWduIGdpdmVzIGFu
IGVycm9yIGluIFdlYkJhc2VQbHVnaW5QYWNrYWdlLm1tCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MTE0NAorCisgICAgICAgIEZpeCBhbiBhbGlnbm1l
bnQgaXNzdWUuIE9TU3dhcEludDMyIHRha2VzIGRhdGEgdGhhdCBpcyAzMi1iaXQgYWxpZ25lZCBv
biBBUk0sIGJ1dAorICAgICAgICB3ZSB3ZXJlIGNhbGxpbmcgaXQgb24gYSBieXRlIGFycmF5IDMy
IGJpdHMgYXQgYSB0aW1lLiBXaGlsZSB0aGlzIGlzIG9rYXkgaW4gcHJhY3RpY2UsCisgICAgICAg
IHNpbmNlIFRDTWFsbG9jIHdvbid0IGdpdmUgdXMgYSBub24tMzItYml0IGFsaWduZWQgYmxvY2sg
YXJyYXkgb2YgYnl0ZXMgYW5kIFZlY3RvcidzCisgICAgICAgIGlubGluZSBzdG9yYWdlIGlzIGF0
IHRoZSBiZWdpbm5pbmcgb2YgdGhlIFZlY3RvciwgaXQgaXMgc3RpbGwgYmV0dGVyIHRvIGZpeCB0
aGlzCisgICAgICAgIGFuZCBzaWxlbmNlIHRoZSB3YXJuaW5nLgorCisgICAgICAgICogUGx1Z2lu
cy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbToKKyAgICAgICAgKHN3YXBJbnRzSW5IZWFkZXIpOgor
ICAgICAgICAoLVtXZWJCYXNlUGx1Z2luUGFja2FnZSBpc05hdGl2ZUxpYnJhcnlEYXRhOl0pOgor
CiAyMDEwLTEyLTE0ICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgU2FtIFdlaW5pZy4K
</data>
<flag name="review"
          id="67712"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="67713"
          type_id="3"
          status="-"
          setter="zwarich"
    />
          </attachment>
      

    </bug>

</bugzilla>