<?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>54920</bug_id>
          
          <creation_ts>2011-02-21 17:47:58 -0800</creation_ts>
          <short_desc>[chromium] WebWorkerBase::openFileSystem confuses clang&apos;s -Woverloaded-virtual</short_desc>
          <delta_ts>2011-02-22 13:47:20 -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>WebKit Misc.</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>
          
          <blocked>54367</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nico Weber">thakis</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>kinuko</cc>
    
    <cc>levin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>354937</commentid>
    <comment_count>0</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2011-02-21 17:47:58 -0800</bug_when>
    <thetext>There are multiple issues here.

1.) WebWorkerBase::openFileSystem() has a comment that points out that this method is not an implementation of the superclass&apos;s WebFrameClient::openFileSystem(). Instead of the comment, the method should have a different name, to make this obvious. I propose openFileSystemForWorker().

2.) WebWorkerClientImpl::openFileSystem() tries to override one of these 2 methods, but fails, since the signature matches neither. I think it tries to override the 1st (i.e. the soon-to-be openFileSystemForWorker)

3.) WebCommonWorkerClient has an old implementation of openFileSystemForWorker() that&apos;s missing the |create| parameter with a comment that this needs to go away once it&apos;s no longer used by chrome (left-over from a 2-sided patch).

kinuko, does this sound about right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>354941</commentid>
    <comment_count>1</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2011-02-21 17:57:11 -0800</bug_when>
    <thetext>Hm, for 2., the override can just be removed, since it&apos;s no different from the base class version.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>354945</commentid>
    <comment_count>2</comment_count>
      <attachid>83248</attachid>
    <who name="Nico Weber">thakis</who>
    <bug_when>2011-02-21 18:05:41 -0800</bug_when>
    <thetext>Created attachment 83248
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>354954</commentid>
    <comment_count>3</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2011-02-21 18:10:02 -0800</bug_when>
    <thetext>This is important so that we can turn on -Woverloaded-virtual, which finds unsuccessful override attempts (a very common source of real bugs).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>354955</commentid>
    <comment_count>4</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2011-02-21 18:10:19 -0800</bug_when>
    <thetext>Dave, are you a good person to review this? If not, can you suggest someone?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355003</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-02-21 19:50:40 -0800</bug_when>
    <thetext>I wanted to review this, but it looked too complicated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355146</commentid>
    <comment_count>6</comment_count>
      <attachid>83248</attachid>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2011-02-22 02:17:49 -0800</bug_when>
    <thetext>Comment on attachment 83248
Patch

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

Thanks for cleaning up the confusing overloads and  messed-up half-way two sided patches.

&gt; Source/WebKit/chromium/public/WebCommonWorkerClient.h:96
&gt; +    virtual void openFileSystemForWorker(WebFileSystem::Type type, long long size, bool create, WebFileSystemCallbacks* callbacks)

Hmm I think actually what we want to leave here is the one WITHOUT the bool create flag.
The flag was added to WebFrameClient::openFileSystem mainly for devtools support, and we don&apos;t need such a flag in worker cases.
So can we just rename the method but leave the parameters as is?   (Or if you think the naming is ok we can just leave it as is, as I believe for WebCommonWorkerClient there&apos;re no worries for confused overloads.)

Again, thanks for cleaning up this and sorry for the mess.

&gt; Source/WebKit/chromium/src/WorkerFileSystemCallbacksBridge.cpp:220
&gt; +        commonClient-&gt;openFileSystemForWorker(type, size, /*create=*/false, MainThreadFileSystemCallbacks::createLeakedPtr(bridge, mode));

As I commented above can we not add the &apos;create&apos; flag?  (And if we add it it&apos;s got to be true).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355374</commentid>
    <comment_count>7</comment_count>
      <attachid>83338</attachid>
    <who name="Nico Weber">thakis</who>
    <bug_when>2011-02-22 10:30:49 -0800</bug_when>
    <thetext>Created attachment 83338
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355377</commentid>
    <comment_count>8</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2011-02-22 10:32:04 -0800</bug_when>
    <thetext>kinuko, thank you for your comments. I understand the design much better now. The new patch is a lot simpler. It does 2 things:

1.) Rename just WebWorkerBase::openFileSystem() to openFileSystemForWorker() and change the one caller.
2.) Remove an unsuccessful override attempt from WebWorkerClientImpl</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355563</commentid>
    <comment_count>9</comment_count>
      <attachid>83338</attachid>
    <who name="Nico Weber">thakis</who>
    <bug_when>2011-02-22 13:47:10 -0800</bug_when>
    <thetext>Comment on attachment 83338
Patch

Landed in r79354.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83248</attachid>
            <date>2011-02-21 18:05:41 -0800</date>
            <delta_ts>2011-02-22 10:30:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-54920-20110221180540.patch</filename>
            <type>text/plain</type>
            <size>7690</size>
            <attacher name="Nico Weber">thakis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogNzkyNjAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
M2FmZDE4NmJjMzYzOGNiMmJkMTE4MmM0YzU0M2U4NGMyNzc5NjcyNS4uN2M0NzE1ZmVjZGZiNmJi
MmMyODUwYTFhNDRiZjFmYmJjOTgwNGRmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSw0MSBAQAorMjAxMS0wMi0yMSAgTmljbyBXZWJlciAgPHRoYWtpc0BjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW2No
cm9taXVtXSBXZWJXb3JrZXJCYXNlOjpvcGVuRmlsZVN5c3RlbSBjb25mdXNlcyBjbGFuZydzIC1X
b3ZlcmxvYWRlZC12aXJ0dWFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD01NDkyMAorCisgICAgICAgIFJlbmFtZSBXZWJXb3JrZXJCYXNlOjpvcGVuRmls
ZVN5c3RlbSgpIHRvIG9wZW5GaWxlU3lzdGVtRm9yV29ya2VyKCkgdG8KKyAgICAgICAgbWFrZSBp
dCBvYnZpb3VzIGl0J3Mgbm90IGFuIG92ZXJyaWRlIG9mCisgICAgICAgIFdlYkZyYW1lQ2xpZW50
OjpvcGVuRmlsZVN5c3RlbSgpLgorCisgICAgICAgIFJlbW92ZSBhIGZhaWxlZCBhdHRlbXB0IHRv
IG92ZXJyaWRlIGl0IGluIFdlYldvcmtlckNsaWVudEltcGwgKHRoZQorICAgICAgICBvdmVycmlk
ZSBkaWRuJ3QgY2hhbmdlIHRoZSBiZWhhdmlvcikuCisKKyAgICAgICAgTm8gaW50ZW5kZWQgZnVu
Y3Rpb25hbGl0eSBjaGFuZ2UuCisKKyAgICAgICAgKiBwdWJsaWMvV2ViQ29tbW9uV29ya2VyQ2xp
ZW50Lmg6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbW1vbldvcmtlckNsaWVudDo6b3BlbkZpbGVT
eXN0ZW0pOgorICAgICAgICBSZW1vdmUgYW4gdW51c2VkIG92ZXJyaWRlLgorICAgICAgICAoV2Vi
S2l0OjpXZWJDb21tb25Xb3JrZXJDbGllbnQ6Om9wZW5GaWxlU3lzdGVtRm9yV29ya2VyKToKKyAg
ICAgICAgQWRkIG5ldyBuYW1lLCBsZXQgaXQgY2FsbCB0aGUgb2xkIG5hbWUgc28gdGhhdCB0aGlz
IGNhbiBiZSByb2xsZWQgaW50bworICAgICAgICBjaHJvbWl1bSwgdGhlbiBjaHJvbWl1bSBjYW4g
YmUgdXBkYXRlZCB0byB0aGUgbmV3IG5hbWUsIHRoZW4gdGhlIG9sZAorICAgICAgICBuYW1lIGNh
biBnby4KKyAgICAgICAgKiBzcmMvTG9jYWxGaWxlU3lzdGVtQ2hyb21pdW0uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6TG9jYWxGaWxlU3lzdGVtOjpyZXF1ZXN0RmlsZVN5c3RlbSk6CisgICAgICAg
IENhbGwgbmV3IG5hbWUuCisgICAgICAgICogc3JjL1dlYldvcmtlckJhc2UuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJXb3JrZXJCYXNlOjpvcGVuRmlsZVN5c3RlbUZvcldvcmtlcik6CisgICAg
ICAgIFJlbmFtZSBtZXRob2QuCisgICAgICAgICogc3JjL1dlYldvcmtlckJhc2UuaDoKKyAgICAg
ICAgUmVuYW1lIG1ldGhvZC4KKyAgICAgICAgKiBzcmMvV2ViV29ya2VyQ2xpZW50SW1wbC5oOgor
ICAgICAgICAoV2ViS2l0OjpXZWJXb3JrZXJDbGllbnRJbXBsOjphbGxvd0RhdGFiYXNlKToKKyAg
ICAgICAgUmVtb3ZlIHVuc3VjY2Vzc2Z1bCAoYW5kIHBvaW50bGVzcykgb3ZlcnJpZGUuCisgICAg
ICAgICogc3JjL1dvcmtlckZpbGVTeXN0ZW1DYWxsYmFja3NCcmlkZ2UuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXb3JrZXJGaWxlU3lzdGVtQ2FsbGJhY2tzQnJpZGdlOjpvcGVuRmlsZVN5c3RlbU9u
TWFpblRocmVhZCk6CisgICAgICAgIENhbGwgbmV3IG5hbWUuCisKIDIwMTEtMDItMTcgIFJ5b3N1
a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VudCBU
YW11cmEuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJDb21t
b25Xb3JrZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkNvbW1v
bldvcmtlckNsaWVudC5oCmluZGV4IGI5OWQzOWQ0MWEyZmU4NjcxODBiZjY3MGVhNjc1OTc4Yjgz
NTIyYjMuLjc4NjA1YjUwYWRmZTk4NzMwYTg3NmM4NTkwZjUwYWNmMmI5YzNlN2EgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkNvbW1vbldvcmtlckNsaWVudC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkNvbW1vbldvcmtlckNsaWVu
dC5oCkBAIC04NiwxNiArODYsMTYgQEAgcHVibGljOgogICAgIC8vIENhbGxlZCBvbiB0aGUgbWFp
biB3ZWJraXQgdGhyZWFkIGJlZm9yZSBvcGVuaW5nIGEgd2ViIGRhdGFiYXNlLgogICAgIHZpcnR1
YWwgYm9vbCBhbGxvd0RhdGFiYXNlKFdlYkZyYW1lKiwgY29uc3QgV2ViU3RyaW5nJiBuYW1lLCBj
b25zdCBXZWJTdHJpbmcmIGRpc3BsYXlOYW1lLCB1bnNpZ25lZCBsb25nIGVzdGltYXRlZFNpemUp
ID0gMDsKIAotICAgIC8vIENhbGxlZCBvbiB0aGUgbWFpbiB3ZWJraXQgdGhyZWFkIGJlZm9yZSBv
cGVuaW5nIGEgZmlsZSBzeXN0ZW0uCi0gICAgdmlydHVhbCB2b2lkIG9wZW5GaWxlU3lzdGVtKFdl
YkZpbGVTeXN0ZW06OlR5cGUsIGxvbmcgbG9uZyBzaXplLCBib29sIGNyZWF0ZSwgV2ViRmlsZVN5
c3RlbUNhbGxiYWNrcyopCisgICAgLy8gVE9ETyh0aGFraXMpOiBSZW1vdmUgb25jZSBjaHJvbWl1
bSBvdmVycmlkZXMgb3BlbkZpbGVTeXN0ZW1Gb3JXb3JrZXIuCisgICAgdmlydHVhbCB2b2lkIG9w
ZW5GaWxlU3lzdGVtKFdlYktpdDo6V2ViRmlsZVN5c3RlbTo6VHlwZSB0eXBlLCBsb25nIGxvbmcg
c2l6ZSwgV2ViS2l0OjpXZWJGaWxlU3lzdGVtQ2FsbGJhY2tzKiBjYWxsYmFja3MpCiAgICAgewog
ICAgICAgICBXRUJLSVRfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgfQogCi0gICAgLy8gVGhp
cyB3aWxsIGJlIHJlbW92ZWQgb25jZSBjaGFuZ2VzIGluIGNocm9taXVtIHVzZSB0aGUgbmV3IG1l
dGhvZCBhYm92ZS4KLSAgICB2aXJ0dWFsIHZvaWQgb3BlbkZpbGVTeXN0ZW0oV2ViRmlsZVN5c3Rl
bTo6VHlwZSwgbG9uZyBsb25nIHNpemUsIFdlYkZpbGVTeXN0ZW1DYWxsYmFja3MqKQorICAgIC8v
IENhbGxlZCBvbiB0aGUgbWFpbiB3ZWJraXQgdGhyZWFkIGJlZm9yZSBvcGVuaW5nIGEgZmlsZSBz
eXN0ZW0uCisgICAgdmlydHVhbCB2b2lkIG9wZW5GaWxlU3lzdGVtRm9yV29ya2VyKFdlYkZpbGVT
eXN0ZW06OlR5cGUgdHlwZSwgbG9uZyBsb25nIHNpemUsIGJvb2wgY3JlYXRlLCBXZWJGaWxlU3lz
dGVtQ2FsbGJhY2tzKiBjYWxsYmFja3MpCiAgICAgewotICAgICAgICBXRUJLSVRfQVNTRVJUX05P
VF9SRUFDSEVEKCk7CisgICAgICAgIG9wZW5GaWxlU3lzdGVtKHR5cGUsIHNpemUsIGNhbGxiYWNr
cyk7CiAgICAgfQogCiBwcm90ZWN0ZWQ6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9Mb2NhbEZpbGVTeXN0ZW1DaHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9Mb2NhbEZpbGVTeXN0ZW1DaHJvbWl1bS5jcHAKaW5kZXggYWUyZWIxZGMwZjY4MDMz
ZTRlODE2NjcyMzZhOGFmNDE3MjMwOThiYS4uY2M4YzFkODQ1OWIxN2VkNWI2Yzc2MDEwOTdjY2Zl
ZDIxNTZkMDgzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvTG9jYWxG
aWxlU3lzdGVtQ2hyb21pdW0uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0xv
Y2FsRmlsZVN5c3RlbUNocm9taXVtLmNwcApAQCAtNzYsNyArNzYsNyBAQCB2b2lkIExvY2FsRmls
ZVN5c3RlbTo6cmVxdWVzdEZpbGVTeXN0ZW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4
dCwgQXN5bmNGaQogICAgICAgICBXb3JrZXJDb250ZXh0KiB3b3JrZXJDb250ZXh0ID0gc3RhdGlj
X2Nhc3Q8V29ya2VyQ29udGV4dCo+KGNvbnRleHQpOwogICAgICAgICBXb3JrZXJMb2FkZXJQcm94
eSogd29ya2VyTG9hZGVyUHJveHkgPSAmd29ya2VyQ29udGV4dC0+dGhyZWFkKCktPndvcmtlckxv
YWRlclByb3h5KCk7CiAgICAgICAgIFdlYldvcmtlckJhc2UqIHdlYldvcmtlciA9IHN0YXRpY19j
YXN0PFdlYldvcmtlckJhc2UqPih3b3JrZXJMb2FkZXJQcm94eSk7Ci0gICAgICAgIHdlYldvcmtl
ci0+b3BlbkZpbGVTeXN0ZW0oc3RhdGljX2Nhc3Q8V2ViRmlsZVN5c3RlbTo6VHlwZT4odHlwZSks
IHNpemUsIG5ldyBXZWJGaWxlU3lzdGVtQ2FsbGJhY2tzSW1wbChjYWxsYmFja3MsIHR5cGUsIGNv
bnRleHQsIHN5bmNocm9ub3VzKSwgc3luY2hyb25vdXMpOworICAgICAgICB3ZWJXb3JrZXItPm9w
ZW5GaWxlU3lzdGVtRm9yV29ya2VyKHN0YXRpY19jYXN0PFdlYkZpbGVTeXN0ZW06OlR5cGU+KHR5
cGUpLCBzaXplLCBuZXcgV2ViRmlsZVN5c3RlbUNhbGxiYWNrc0ltcGwoY2FsbGJhY2tzLCB0eXBl
LCBjb250ZXh0LCBzeW5jaHJvbm91cyksIHN5bmNocm9ub3VzKTsKICAgICB9CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYldvcmtlckJhc2UuY3BwIGIvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQmFzZS5jcHAKaW5kZXggMDZlYjdiMTRl
ZmEzNTRkZDE3ZTY4Yjc1NDdlNmM5OGY3ZDBjZjI3Mi4uYjE2YjZkNDA3YzBhNzc3YTc1MDU3NjZl
MDMzZjlhNDUzODI1MmVkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViV29ya2VyQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29y
a2VyQmFzZS5jcHAKQEAgLTIzNyw3ICsyMzcsNyBAQCBib29sIFdlYldvcmtlckJhc2U6OmFsbG93
RGF0YWJhc2UoV2ViRnJhbWUqLCBjb25zdCBXZWJTdHJpbmcmIG5hbWUsIGNvbnN0IFdlYlN0cgog
fQogCiAjaWYgRU5BQkxFKEZJTEVfU1lTVEVNKQotdm9pZCBXZWJXb3JrZXJCYXNlOjpvcGVuRmls
ZVN5c3RlbShXZWJGaWxlU3lzdGVtOjpUeXBlIHR5cGUsIGxvbmcgbG9uZyBzaXplLCBXZWJGaWxl
U3lzdGVtQ2FsbGJhY2tzKiBjYWxsYmFja3MsIGJvb2wgc3luY2hyb25vdXMpCit2b2lkIFdlYldv
cmtlckJhc2U6Om9wZW5GaWxlU3lzdGVtRm9yV29ya2VyKFdlYkZpbGVTeXN0ZW06OlR5cGUgdHlw
ZSwgbG9uZyBsb25nIHNpemUsIFdlYkZpbGVTeXN0ZW1DYWxsYmFja3MqIGNhbGxiYWNrcywgYm9v
bCBzeW5jaHJvbm91cykKIHsKICAgICBXb3JrZXJSdW5Mb29wJiBydW5Mb29wID0gbV93b3JrZXJU
aHJlYWQtPnJ1bkxvb3AoKTsKICAgICBXb3JrZXJTY3JpcHRDb250cm9sbGVyKiBjb250cm9sbGVy
ID0gV29ya2VyU2NyaXB0Q29udHJvbGxlcjo6Y29udHJvbGxlckZvckNvbnRleHQoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYldvcmtlckJhc2UuaCBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYldvcmtlckJhc2UuaAppbmRleCBmZTg0YmY3OGZhMDA2
MDA0YTJjMzEwMGM1ODJlNTczNzVlZDIyMmNjLi5lYzczNTA1NjlhODc0ZWE5ODI1OGJlODI5NzZh
MmFhYjA0M2YwZTUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJX
b3JrZXJCYXNlLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQmFz
ZS5oCkBAIC05Miw4ICs5Miw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dEYXRh
YmFzZShXZWJGcmFtZSosIGNvbnN0IFdlYlN0cmluZyYgbmFtZSwgY29uc3QgV2ViU3RyaW5nJiBk
aXNwbGF5TmFtZSwgdW5zaWduZWQgbG9uZyBlc3RpbWF0ZWRTaXplKTsKIAogI2lmIEVOQUJMRShG
SUxFX1NZU1RFTSkKLSAgICAvLyBSZXF1ZXN0cyB0byBvcGVuIGEgZmlsZSBzeXN0ZW0gZm9yIHRo
aXMgd29ya2VyLiAoTm90ZSB0aGF0IHRoaXMgaXMgbm90IHRoZSBpbXBsZW1lbnRhdGlvbiBmb3Ig
V2ViRnJhbWVDbGllbnQ6Om9wZW5GaWxlU3lzdGVtLikKLSAgICB2b2lkIG9wZW5GaWxlU3lzdGVt
KFdlYkZpbGVTeXN0ZW06OlR5cGUsIGxvbmcgbG9uZyBzaXplLCBXZWJGaWxlU3lzdGVtQ2FsbGJh
Y2tzKiwgYm9vbCBzeW5jaHJvbm91cyk7CisgICAgdm9pZCBvcGVuRmlsZVN5c3RlbUZvcldvcmtl
cihXZWJGaWxlU3lzdGVtOjpUeXBlLCBsb25nIGxvbmcgc2l6ZSwgV2ViRmlsZVN5c3RlbUNhbGxi
YWNrcyosIGJvb2wgc3luY2hyb25vdXMpOwogI2VuZGlmCiAKICAgICAvLyBFeGVjdXRlcyB0aGUg
Z2l2ZW4gdGFzayBvbiB0aGUgbWFpbiB0aHJlYWQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJXb3JrZXJDbGllbnRJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJXb3JrZXJDbGllbnRJbXBsLmgKaW5kZXggMDYwNDgyMzVkYmYyOGZjOWVmZjM0
YTJhZWZkYTg0MWE4OTc0YzdkMi4uYTdkY2QzYzA4NjUyYjM3MTUwYTNkOTI5MTVmZjBjYTQ0MmIz
Zjc2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQ2xp
ZW50SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYldvcmtlckNsaWVu
dEltcGwuaApAQCAtOTksMTAgKzk5LDYgQEAgcHVibGljOgogICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotICAgIHZpcnR1YWwgdm9pZCBv
cGVuRmlsZVN5c3RlbShXZWJGcmFtZSosIFdlYkZpbGVTeXN0ZW06OlR5cGUsIGxvbmcgbG9uZyBz
aXplLCBXZWJGaWxlU3lzdGVtQ2FsbGJhY2tzKikKLSAgICB7Ci0gICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwotICAgIH0KIAogcHJpdmF0ZToKICAgICB2aXJ0dWFsIH5XZWJXb3JrZXJDbGll
bnRJbXBsKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Xb3JrZXJG
aWxlU3lzdGVtQ2FsbGJhY2tzQnJpZGdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dvcmtlckZpbGVTeXN0ZW1DYWxsYmFja3NCcmlkZ2UuY3BwCmluZGV4IDZjMzEyMjE3YjY1N2Yz
ZDU4NjU5NjY5NmZkNGM5MmY3OWJiMDc4ZGQuLjQwOTQxYzg1NDk5YTljZTk5OTExZTNjNTRhODg3
NjgwNzQzOThkNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dvcmtl
ckZpbGVTeXN0ZW1DYWxsYmFja3NCcmlkZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dvcmtlckZpbGVTeXN0ZW1DYWxsYmFja3NCcmlkZ2UuY3BwCkBAIC0yMTcsNyArMjE3
LDcgQEAgdm9pZCBXb3JrZXJGaWxlU3lzdGVtQ2FsbGJhY2tzQnJpZGdlOjpvcGVuRmlsZVN5c3Rl
bU9uTWFpblRocmVhZChTY3JpcHRFeGVjdXRpb24KICAgICBpZiAoIWNvbW1vbkNsaWVudCkKICAg
ICAgICAgYnJpZGdlLT5kaWRGYWlsT25NYWluVGhyZWFkKFdlYkZpbGVFcnJvckFib3J0LCBtb2Rl
KTsKICAgICBlbHNlIHsKLSAgICAgICAgY29tbW9uQ2xpZW50LT5vcGVuRmlsZVN5c3RlbSh0eXBl
LCBzaXplLCBNYWluVGhyZWFkRmlsZVN5c3RlbUNhbGxiYWNrczo6Y3JlYXRlTGVha2VkUHRyKGJy
aWRnZSwgbW9kZSkpOworICAgICAgICBjb21tb25DbGllbnQtPm9wZW5GaWxlU3lzdGVtRm9yV29y
a2VyKHR5cGUsIHNpemUsIC8qY3JlYXRlPSovZmFsc2UsIE1haW5UaHJlYWRGaWxlU3lzdGVtQ2Fs
bGJhY2tzOjpjcmVhdGVMZWFrZWRQdHIoYnJpZGdlLCBtb2RlKSk7CiAgICAgfQogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83338</attachid>
            <date>2011-02-22 10:30:49 -0800</date>
            <delta_ts>2011-02-22 13:47:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-54920-20110222103048.patch</filename>
            <type>text/plain</type>
            <size>4888</size>
            <attacher name="Nico Weber">thakis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogNzkyNjAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
M2FmZDE4NmJjMzYzOGNiMmJkMTE4MmM0YzU0M2U4NGMyNzc5NjcyNS4uYmZkNzMyYzZlNmQ3N2Rm
YWQwYzE2NGQwN2M4NzFlY2M4N2E3Njc3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwzMSBAQAorMjAxMS0wMi0yMSAgTmljbyBXZWJlciAgPHRoYWtpc0BjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW2No
cm9taXVtXSBXZWJXb3JrZXJCYXNlOjpvcGVuRmlsZVN5c3RlbSBjb25mdXNlcyBjbGFuZydzIC1X
b3ZlcmxvYWRlZC12aXJ0dWFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD01NDkyMAorCisgICAgICAgIFJlbmFtZSBXZWJXb3JrZXJCYXNlOjpvcGVuRmls
ZVN5c3RlbSgpIHRvIG9wZW5GaWxlU3lzdGVtRm9yV29ya2VyKCkgdG8KKyAgICAgICAgbWFrZSBp
dCBvYnZpb3VzIGl0J3Mgbm90IGFuIG92ZXJyaWRlIG9mCisgICAgICAgIFdlYkZyYW1lQ2xpZW50
OjpvcGVuRmlsZVN5c3RlbSgpLgorCisgICAgICAgIFJlbW92ZSBhIGZhaWxlZCBhdHRlbXB0IHRv
IG92ZXJyaWRlIGl0IGluIFdlYldvcmtlckNsaWVudEltcGwgKHRoZQorICAgICAgICBvdmVycmlk
ZSBkaWRuJ3QgY2hhbmdlIHRoZSBiZWhhdmlvcikuCisKKyAgICAgICAgTm8gaW50ZW5kZWQgZnVu
Y3Rpb25hbGl0eSBjaGFuZ2UuCisKKyAgICAgICAgKiBzcmMvTG9jYWxGaWxlU3lzdGVtQ2hyb21p
dW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TG9jYWxGaWxlU3lzdGVtOjpyZXF1ZXN0RmlsZVN5
c3RlbSk6CisgICAgICAgIENhbGwgbmV3IG5hbWUuCisgICAgICAgICogc3JjL1dlYldvcmtlckJh
c2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJXb3JrZXJCYXNlOjpvcGVuRmlsZVN5c3RlbUZv
cldvcmtlcik6CisgICAgICAgIFJlbmFtZSBvcGVuRmlsZVN5c3RlbSgpIHRvIG9wZW5GaWxlU3lz
dGVtRm9yV29ya2VyKCkuCisgICAgICAgICogc3JjL1dlYldvcmtlckJhc2UuaDoKKyAgICAgICAg
UmVuYW1lIG9wZW5GaWxlU3lzdGVtKCkgdG8gb3BlbkZpbGVTeXN0ZW1Gb3JXb3JrZXIoKS4KKyAg
ICAgICAgKiBzcmMvV2ViV29ya2VyQ2xpZW50SW1wbC5oOgorICAgICAgICAoV2ViS2l0OjpXZWJX
b3JrZXJDbGllbnRJbXBsOjphbGxvd0RhdGFiYXNlKToKKyAgICAgICAgUmVtb3ZlIHVuc3VjY2Vz
c2Z1bCAoYW5kIHBvaW50bGVzcykgb3ZlcnJpZGUuCisKIDIwMTEtMDItMTcgIFJ5b3N1a2UgTml3
YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VudCBUYW11cmEu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Mb2NhbEZpbGVTeXN0ZW1D
aHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Mb2NhbEZpbGVTeXN0ZW1D
aHJvbWl1bS5jcHAKaW5kZXggYWUyZWIxZGMwZjY4MDMzZTRlODE2NjcyMzZhOGFmNDE3MjMwOThi
YS4uY2M4YzFkODQ1OWIxN2VkNWI2Yzc2MDEwOTdjY2ZlZDIxNTZkMDgzNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvTG9jYWxGaWxlU3lzdGVtQ2hyb21pdW0uY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0xvY2FsRmlsZVN5c3RlbUNocm9taXVtLmNw
cApAQCAtNzYsNyArNzYsNyBAQCB2b2lkIExvY2FsRmlsZVN5c3RlbTo6cmVxdWVzdEZpbGVTeXN0
ZW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgQXN5bmNGaQogICAgICAgICBXb3Jr
ZXJDb250ZXh0KiB3b3JrZXJDb250ZXh0ID0gc3RhdGljX2Nhc3Q8V29ya2VyQ29udGV4dCo+KGNv
bnRleHQpOwogICAgICAgICBXb3JrZXJMb2FkZXJQcm94eSogd29ya2VyTG9hZGVyUHJveHkgPSAm
d29ya2VyQ29udGV4dC0+dGhyZWFkKCktPndvcmtlckxvYWRlclByb3h5KCk7CiAgICAgICAgIFdl
YldvcmtlckJhc2UqIHdlYldvcmtlciA9IHN0YXRpY19jYXN0PFdlYldvcmtlckJhc2UqPih3b3Jr
ZXJMb2FkZXJQcm94eSk7Ci0gICAgICAgIHdlYldvcmtlci0+b3BlbkZpbGVTeXN0ZW0oc3RhdGlj
X2Nhc3Q8V2ViRmlsZVN5c3RlbTo6VHlwZT4odHlwZSksIHNpemUsIG5ldyBXZWJGaWxlU3lzdGVt
Q2FsbGJhY2tzSW1wbChjYWxsYmFja3MsIHR5cGUsIGNvbnRleHQsIHN5bmNocm9ub3VzKSwgc3lu
Y2hyb25vdXMpOworICAgICAgICB3ZWJXb3JrZXItPm9wZW5GaWxlU3lzdGVtRm9yV29ya2VyKHN0
YXRpY19jYXN0PFdlYkZpbGVTeXN0ZW06OlR5cGU+KHR5cGUpLCBzaXplLCBuZXcgV2ViRmlsZVN5
c3RlbUNhbGxiYWNrc0ltcGwoY2FsbGJhY2tzLCB0eXBlLCBjb250ZXh0LCBzeW5jaHJvbm91cyks
IHN5bmNocm9ub3VzKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYldvcmtlckJhc2UuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViV29ya2VyQmFzZS5jcHAKaW5kZXggMDZlYjdiMTRlZmEzNTRkZDE3ZTY4Yjc1NDdlNmM5OGY3
ZDBjZjI3Mi4uYjE2YjZkNDA3YzBhNzc3YTc1MDU3NjZlMDMzZjlhNDUzODI1MmVkNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQmFzZS5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQmFzZS5jcHAKQEAgLTIzNyw3ICsy
MzcsNyBAQCBib29sIFdlYldvcmtlckJhc2U6OmFsbG93RGF0YWJhc2UoV2ViRnJhbWUqLCBjb25z
dCBXZWJTdHJpbmcmIG5hbWUsIGNvbnN0IFdlYlN0cgogfQogCiAjaWYgRU5BQkxFKEZJTEVfU1lT
VEVNKQotdm9pZCBXZWJXb3JrZXJCYXNlOjpvcGVuRmlsZVN5c3RlbShXZWJGaWxlU3lzdGVtOjpU
eXBlIHR5cGUsIGxvbmcgbG9uZyBzaXplLCBXZWJGaWxlU3lzdGVtQ2FsbGJhY2tzKiBjYWxsYmFj
a3MsIGJvb2wgc3luY2hyb25vdXMpCit2b2lkIFdlYldvcmtlckJhc2U6Om9wZW5GaWxlU3lzdGVt
Rm9yV29ya2VyKFdlYkZpbGVTeXN0ZW06OlR5cGUgdHlwZSwgbG9uZyBsb25nIHNpemUsIFdlYkZp
bGVTeXN0ZW1DYWxsYmFja3MqIGNhbGxiYWNrcywgYm9vbCBzeW5jaHJvbm91cykKIHsKICAgICBX
b3JrZXJSdW5Mb29wJiBydW5Mb29wID0gbV93b3JrZXJUaHJlYWQtPnJ1bkxvb3AoKTsKICAgICBX
b3JrZXJTY3JpcHRDb250cm9sbGVyKiBjb250cm9sbGVyID0gV29ya2VyU2NyaXB0Q29udHJvbGxl
cjo6Y29udHJvbGxlckZvckNvbnRleHQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYldvcmtlckJhc2UuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YldvcmtlckJhc2UuaAppbmRleCBmZTg0YmY3OGZhMDA2MDA0YTJjMzEwMGM1ODJlNTczNzVlZDIy
MmNjLi5lYzczNTA1NjlhODc0ZWE5ODI1OGJlODI5NzZhMmFhYjA0M2YwZTUzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJXb3JrZXJCYXNlLmgKKysrIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQmFzZS5oCkBAIC05Miw4ICs5Miw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dEYXRhYmFzZShXZWJGcmFtZSosIGNvbnN0IFdl
YlN0cmluZyYgbmFtZSwgY29uc3QgV2ViU3RyaW5nJiBkaXNwbGF5TmFtZSwgdW5zaWduZWQgbG9u
ZyBlc3RpbWF0ZWRTaXplKTsKIAogI2lmIEVOQUJMRShGSUxFX1NZU1RFTSkKLSAgICAvLyBSZXF1
ZXN0cyB0byBvcGVuIGEgZmlsZSBzeXN0ZW0gZm9yIHRoaXMgd29ya2VyLiAoTm90ZSB0aGF0IHRo
aXMgaXMgbm90IHRoZSBpbXBsZW1lbnRhdGlvbiBmb3IgV2ViRnJhbWVDbGllbnQ6Om9wZW5GaWxl
U3lzdGVtLikKLSAgICB2b2lkIG9wZW5GaWxlU3lzdGVtKFdlYkZpbGVTeXN0ZW06OlR5cGUsIGxv
bmcgbG9uZyBzaXplLCBXZWJGaWxlU3lzdGVtQ2FsbGJhY2tzKiwgYm9vbCBzeW5jaHJvbm91cyk7
CisgICAgdm9pZCBvcGVuRmlsZVN5c3RlbUZvcldvcmtlcihXZWJGaWxlU3lzdGVtOjpUeXBlLCBs
b25nIGxvbmcgc2l6ZSwgV2ViRmlsZVN5c3RlbUNhbGxiYWNrcyosIGJvb2wgc3luY2hyb25vdXMp
OwogI2VuZGlmCiAKICAgICAvLyBFeGVjdXRlcyB0aGUgZ2l2ZW4gdGFzayBvbiB0aGUgbWFpbiB0
aHJlYWQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJXb3JrZXJD
bGllbnRJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJXb3JrZXJDbGllbnRJ
bXBsLmgKaW5kZXggMDYwNDgyMzVkYmYyOGZjOWVmZjM0YTJhZWZkYTg0MWE4OTc0YzdkMi4uYTdk
Y2QzYzA4NjUyYjM3MTUwYTNkOTI5MTVmZjBjYTQ0MmIzZjc2NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQ2xpZW50SW1wbC5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYldvcmtlckNsaWVudEltcGwuaApAQCAtOTksMTAgKzk5LDYg
QEAgcHVibGljOgogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgcmV0dXJu
IHRydWU7CiAgICAgfQotICAgIHZpcnR1YWwgdm9pZCBvcGVuRmlsZVN5c3RlbShXZWJGcmFtZSos
IFdlYkZpbGVTeXN0ZW06OlR5cGUsIGxvbmcgbG9uZyBzaXplLCBXZWJGaWxlU3lzdGVtQ2FsbGJh
Y2tzKikKLSAgICB7Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIH0KIAogcHJp
dmF0ZToKICAgICB2aXJ0dWFsIH5XZWJXb3JrZXJDbGllbnRJbXBsKCk7Cg==
</data>
<flag name="review"
          id="75128"
          type_id="1"
          status="+"
          setter="jamesr"
    />
    <flag name="commit-queue"
          id="75144"
          type_id="3"
          status="-"
          setter="thakis"
    />
          </attachment>
      

    </bug>

</bugzilla>