<?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>112094</bug_id>
          
          <creation_ts>2013-03-11 19:19:55 -0700</creation_ts>
          <short_desc>[Chromium] Embedder should be able to define built-in like custom elements</short_desc>
          <delta_ts>2013-04-08 16:48:13 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</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>
          <dependson>110436</dependson>
          <blocked>99688</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hajime Morrita">morrita</reporter>
          <assigned_to name="Hajime Morrita">morrita</assigned_to>
          <cc>abarth</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dglazkov</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>japhet</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>schenney</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>webcomponents-bugzilla</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>853003</commentid>
    <comment_count>0</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2013-03-11 19:19:55 -0700</bug_when>
    <thetext>Some embedder-provided tags like &lt;webview&gt; want be custom elements, which
- have non-hyphen names
- make their shadows non-traversable</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853165</commentid>
    <comment_count>1</comment_count>
      <attachid>192661</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2013-03-12 01:02:04 -0700</bug_when>
    <thetext>Created attachment 192661
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853169</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-12 01:04:40 -0700</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853664</commentid>
    <comment_count>3</comment_count>
      <attachid>192661</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-03-12 11:30:59 -0700</bug_when>
    <thetext>Comment on attachment 192661
Patch

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

&gt; Source/WebCore/loader/FrameLoaderClient.h:374
&gt; +        virtual bool isUserAgentCustomElementName(String /*name*/) { return false; }

String -&gt; const String&amp;

&gt; Source/WebKit/chromium/public/WebFrameClient.h:438
&gt; +    virtual bool isUserAgentCustomElementName(WebFrame*, WebString) { return false; }

WebString  -&gt;  const WebString&amp;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853666</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-03-12 11:31:44 -0700</bug_when>
    <thetext>Is it better to call out from WebKit to the embedder, as you&apos;ve done in this patch, or to have the embedder configure this information into WebKit?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855102</commentid>
    <comment_count>5</comment_count>
      <attachid>193097</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2013-03-14 03:07:13 -0700</bug_when>
    <thetext>Created attachment 193097
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855105</commentid>
    <comment_count>6</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2013-03-14 03:09:58 -0700</bug_when>
    <thetext>Adam, thanks for looking this responsibly!
I updated the patch.

&gt; Is it better to call out from WebKit to the embedder, as you&apos;ve done in this patch, or to have the embedder configure this information into WebKit?
This is my first plan. But I notice that

- it&apos;s a tricky business for embedder to track Document lifetime precisely and give
   appropriate element name for each newly created element.
- Chromium API layer has no extra strage associated to Document lifetime.

So I switched to this &quot;pull&quot; approach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856190</commentid>
    <comment_count>7</comment_count>
      <attachid>193097</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-03-15 12:24:32 -0700</bug_when>
    <thetext>Comment on attachment 193097
Patch

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

&gt; Source/WebKit/chromium/public/WebFrameClient.h:433
&gt; +    // Asks whether given element name is used as a embedder-providing
&gt; +    // custom element. Such custom elements can have names without hyphen,
&gt; +    // and their shadow trees aren&apos;t traversable.
&gt; +    virtual bool isUserAgentCustomElementName(WebFrame*, const WebString&amp;) { return false; }

How does this behave when we create an element in a document that is no longer active in a frame?  I guess we don&apos;t make the callback and therefore the element types disappear?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856191</commentid>
    <comment_count>8</comment_count>
      <attachid>193097</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-03-15 12:26:42 -0700</bug_when>
    <thetext>Comment on attachment 193097
Patch

I don&apos;t think we should do this yet.  We should wait until the custom element mechanism is more mature before exposing it to the embedder.  Otherwise, we&apos;ll make it difficult for ourselves to track the spec as it evolves because we&apos;ll have a constraint that other browser engines won&apos;t have.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856522</commentid>
    <comment_count>9</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2013-03-15 23:44:16 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 193097 [details])
&gt; I don&apos;t think we should do this yet.  We should wait until the custom element mechanism is more mature before exposing it to the embedder.  Otherwise, we&apos;ll make it difficult for ourselves to track the spec as it evolves because we&apos;ll have a constraint that other browser engines won&apos;t have.

Adam, thanks for your feedback. The point is valid.
I&apos;d discuss the team to search other possible approaches.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192661</attachid>
            <date>2013-03-12 01:02:04 -0700</date>
            <delta_ts>2013-03-14 03:07:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112094-20130312165803.patch</filename>
            <type>text/plain</type>
            <size>9027</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NDY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDY3NDNmNzZiNzYwNzZh
MWY4ZTE3YTlhZjRmMTVlZWQ2NzIxZTE5Yi4uYTZkZDJjN2NlZmI4ZWViZDJlZDhjMDczNjZlZjQ5
NjE3ODFkMTc0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEzLTAzLTEyICBIYWpp
bWUgTW9ycml0YSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEVt
YmVkZGVyIHNob3VsZCBiZSBhYmxlIHRvIGRlZmluZSBidWlsdC1pbiBsaWtlIGN1c3RvbSBlbGVt
ZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEy
MDk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRk
ZWQgRnJhbWVMb2FkZXJDbGllbnQ6OmlzVXNlckFnZW50Q3VzdG9tRWxlbWVudE5hbWUoKSBhbmQg
YXNrIGl0IHdoZW4KKyAgICAgICAgY3JlYXRpbmcgbmV3IHNoYWRvdyByb290IGFuZCByZWdpc3Rl
cmluZyBuZXcgY3VzdG9tIGVsZW1lbnQgZGVmaW5pdGlvbi4KKworICAgICAgICAqIGRvbS9DdXN0
b21FbGVtZW50UmVnaXN0cnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q3VzdG9tRWxlbWVudFJl
Z2lzdHJ5Ojppc1ZhbGlkTmFtZSk6CisgICAgICAgICogZG9tL0N1c3RvbUVsZW1lbnRSZWdpc3Ry
eS5oOgorICAgICAgICAoQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5KToKKyAgICAgICAgKiBkb20vRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzaGFkb3dUeXBlT2YpOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpjcmVhdGVTaGFkb3dSb290KToKKyAg
ICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaDoKKyAgICAgICAgKEZyYW1lTG9hZGVy
Q2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50Ojppc1VzZXJBZ2Vu
dEN1c3RvbUVsZW1lbnROYW1lKToKKwogMjAxMy0wMy0xMSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3
ZWJraXQub3JnPgogCiAgICAgICAgIE1ha2UgQmFja2dyb3VuZEhUTUxQYXJzZXIgd29yayB3aXRo
IGRvYy53cml0ZXMgdGhhdCBlbnRlciBvciBsZWF2ZSBmb3JlaWduIGNvbnRlbnQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKaW5kZXggMTBlYjQ2ZDdkZjZiMjM5YzcxZTAyNTVhOWYyYzAxZjNjZGYx
ZDZiNy4uOWM1NmY5YmYyMDE1NDE3YWI3MWZiY2VlOWVlNTI0ZjVhYzk5MGQ2ZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMy0wMy0xMiAgSGFqaW1lIE1v
cnJpdGEgIDxtb3JyaXRhQGdvb2dsZS5jb20+CisKKyAgICAgICAgW0Nocm9taXVtXSBFbWJlZGRl
ciBzaG91bGQgYmUgYWJsZSB0byBkZWZpbmUgYnVpbHQtaW4gbGlrZSBjdXN0b20gZWxlbWVudHMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMjA5NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIC0gR2F2ZSBh
biBpbXBsZW1lbnRhdGlvbiBvZiBGcmFtZUxvYWRlckNsaWVudDo6aXNVc2VyQWdlbnRDdXN0b21F
bGVtZW50TmFtZSgpCisgICAgICAgIC0gQWRkZWQgV2ViRnJhbWVDbGllbnQ6aXNVc2VyQWdlbnRD
dXN0b21FbGVtZW50TmFtZSgpCisKKyAgICAgICAgKiBwdWJsaWMvV2ViRnJhbWVDbGllbnQuaDoK
KyAgICAgICAgKFdlYkZyYW1lQ2xpZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVDbGll
bnQ6OmlzVXNlckFnZW50Q3VzdG9tRWxlbWVudE5hbWUpOgorICAgICAgICAqIHNyYy9GcmFtZUxv
YWRlckNsaWVudEltcGwuY3BwOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6
RnJhbWVMb2FkZXJDbGllbnRJbXBsOjppc1VzZXJBZ2VudEN1c3RvbUVsZW1lbnROYW1lKToKKyAg
ICAgICAgKiBzcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmg6CisgICAgICAgIChGcmFtZUxvYWRl
ckNsaWVudEltcGwpOgorCiAyMDEzLTAzLTExICBBYmhpc2hlayBBcnlhICA8aW5mZXJub0BjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgUmVwbGFjZSBzdGF0aWNfY2FzdHMgd2l0aCB0byogZnVuY3Rp
b25zLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0N1c3RvbUVsZW1lbnRSZWdpc3Ry
eS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmNwcAppbmRl
eCBkOGIwY2Q5MDU1MDY1ZjM3OGRhNjc4MWFlYjIwMTdkM2IzYTdhNmZhLi42YmM1ZjU4ODhhMDAx
NzlmZDA4NmY2ODIzZjgwNzZiNDllNDA0NDBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ3Vz
dG9tRWxlbWVudFJlZ2lzdHJ5LmNwcApAQCAtMzksNiArMzksOCBAQAogI2luY2x1ZGUgIkRpY3Rp
b25hcnkuaCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkVsZW1lbnQuaCIKKyNp
bmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIkZyYW1lTG9hZGVyQ2xpZW50LmgiCiAjaW5jbHVk
ZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2lu
Y2x1ZGUgPHd0Zi9BU0NJSUNUeXBlLmg+CkBAIC03Niw2ICs3OCw5IEBAIGJvb2wgQ3VzdG9tRWxl
bWVudFJlZ2lzdHJ5Ojppc1ZhbGlkTmFtZShjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUpCiAgICAg
aWYgKGh5cGhlblBvc2l0aW9uID09IG5vdEZvdW5kKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAK
KyAgICBpZiAoZG9jdW1lbnQoKS0+ZnJhbWUoKSAmJiBkb2N1bWVudCgpLT5mcmFtZSgpLT5sb2Fk
ZXIoKS0+Y2xpZW50KCktPmlzVXNlckFnZW50Q3VzdG9tRWxlbWVudE5hbWUobmFtZSkpCisgICAg
ICAgIHJldHVybiB0cnVlOworCiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChWZWN0b3I8QXRvbWlj
U3RyaW5nPiwgcmVzZXJ2ZWROYW1lcywgKCkpOwogICAgIGlmIChyZXNlcnZlZE5hbWVzLmlzRW1w
dHkoKSkgewogI2lmIEVOQUJMRShNQVRITUwpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ3VzdG9tRWxl
bWVudFJlZ2lzdHJ5LmgKaW5kZXggMjA4MmNkNzYyMmNmNjJlYWJlMTM2ZDZhZmIyN2E0ZGFhNjJl
NzI3YS4uZGNjZmJkMjk0YTcxMjM5NGY3MzZhMGYzYmE1MmQ2ZjU1NjA0ZWEzNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9DdXN0b21FbGVtZW50UmVnaXN0cnkuaApAQCAtNjYsNyArNjYsNyBAQCBw
dWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8Q3VzdG9tRWxlbWVudENvbnN0cnVjdG9yPiBj
b25zdHJ1Y3Rvck9mKEVsZW1lbnQqKTsKICAgICAKIHByaXZhdGU6Ci0gICAgc3RhdGljIGJvb2wg
aXNWYWxpZE5hbWUoY29uc3QgQXRvbWljU3RyaW5nJik7CisgICAgYm9vbCBpc1ZhbGlkTmFtZShj
b25zdCBBdG9taWNTdHJpbmcmKTsKIAogICAgIHR5cGVkZWYgSGFzaE1hcDxRdWFsaWZpZWROYW1l
OjpRdWFsaWZpZWROYW1lSW1wbCosIFJlZlB0cjxDdXN0b21FbGVtZW50Q29uc3RydWN0b3I+ID5D
b25zdHJ1Y3Rvck1hcDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCmluZGV4IDY2MzA0OWFiMDE0YzI3
NjE5ODk1OTU1MjVjOTQ2YTU3M2YwYTU5N2YuLjVjMTQyNjY5NGQyOGMwN2EyZmY0OTg1N2MyMmI0
N2ZhODc5Mzc1ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTQzLDYgKzQzLDcgQEAKICNp
bmNsdWRlICJGbG93VGhyZWFkQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkZvY3VzQ29udHJvbGxl
ci5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCisjaW5jbHVkZSAiRnJhbWVMb2FkZXJDbGllbnQuaCIK
ICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKICNpbmNsdWRlICJIVE1MQ29sbGVjdGlvbi5oIgogI2lu
Y2x1ZGUgIkhUTUxEb2N1bWVudC5oIgpAQCAtMTQ3Nyw2ICsxNDc4LDE2IEBAIHZvaWQgRWxlbWVu
dDo6ZGlkQWZmZWN0U2VsZWN0b3IoQWZmZWN0ZWRTZWxlY3Rvck1hc2sgbWFzaykKICAgICAgICAg
ZWxlbWVudFNoYWRvdy0+ZGlkQWZmZWN0U2VsZWN0b3IobWFzayk7CiB9CiAKK3N0YXRpYyBTaGFk
b3dSb290OjpTaGFkb3dSb290VHlwZSBzaGFkb3dUeXBlT2YoRWxlbWVudCogaG9zdCkKK3sKKyNp
ZiBFTkFCTEUoQ1VTVE9NX0VMRU1FTlRTKQorICAgIGlmIChob3N0LT5kb2N1bWVudCgpLT5mcmFt
ZSgpICYmIGhvc3QtPmRvY3VtZW50KCktPmZyYW1lKCktPmxvYWRlcigpLT5jbGllbnQoKS0+aXNV
c2VyQWdlbnRDdXN0b21FbGVtZW50TmFtZShob3N0LT50YWdOYW1lKCkpKQorICAgICAgICByZXR1
cm4gU2hhZG93Um9vdDo6VXNlckFnZW50U2hhZG93Um9vdDsKKyNlbmRpZgorICAgIFVOVVNFRF9Q
QVJBTShob3N0KTsKKyAgICByZXR1cm4gU2hhZG93Um9vdDo6QXV0aG9yU2hhZG93Um9vdDsKK30K
KwogUGFzc1JlZlB0cjxTaGFkb3dSb290PiBFbGVtZW50OjpjcmVhdGVTaGFkb3dSb290KEV4Y2Vw
dGlvbkNvZGUmIGVjKQogewogICAgIGlmIChhbHdheXNDcmVhdGVVc2VyQWdlbnRTaGFkb3dSb290
KCkpCkBAIC0xNDg0LDcgKzE0OTUsNyBAQCBQYXNzUmVmUHRyPFNoYWRvd1Jvb3Q+IEVsZW1lbnQ6
OmNyZWF0ZVNoYWRvd1Jvb3QoRXhjZXB0aW9uQ29kZSYgZWMpCiAKICNpZiBFTkFCTEUoU0hBRE9X
X0RPTSkKICAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6YXV0aG9yU2hhZG93RE9NRm9y
QW55RWxlbWVudEVuYWJsZWQoKSkKLSAgICAgICAgcmV0dXJuIGVuc3VyZVNoYWRvdygpLT5hZGRT
aGFkb3dSb290KHRoaXMsIFNoYWRvd1Jvb3Q6OkF1dGhvclNoYWRvd1Jvb3QpOworICAgICAgICBy
ZXR1cm4gZW5zdXJlU2hhZG93KCktPmFkZFNoYWRvd1Jvb3QodGhpcywgc2hhZG93VHlwZU9mKHRo
aXMpKTsKICNlbmRpZgogCiAgICAgLy8gU2luY2Ugc29tZSBlbGVtZW50cyByZWNyZWF0ZXMgc2hh
ZG93IHJvb3QgZHluYW1pY2FsbHksIG11bHRpcGxlIHNoYWRvdwpAQCAtMTQ5NCw3ICsxNTA1LDcg
QEAgUGFzc1JlZlB0cjxTaGFkb3dSb290PiBFbGVtZW50OjpjcmVhdGVTaGFkb3dSb290KEV4Y2Vw
dGlvbkNvZGUmIGVjKQogICAgICAgICBlYyA9IEhJRVJBUkNIWV9SRVFVRVNUX0VSUjsKICAgICAg
ICAgcmV0dXJuIDA7CiAgICAgfQotICAgIHJldHVybiBlbnN1cmVTaGFkb3coKS0+YWRkU2hhZG93
Um9vdCh0aGlzLCBTaGFkb3dSb290OjpBdXRob3JTaGFkb3dSb290KTsKKyAgICByZXR1cm4gZW5z
dXJlU2hhZG93KCktPmFkZFNoYWRvd1Jvb3QodGhpcywgc2hhZG93VHlwZU9mKHRoaXMpKTsKIH0K
IAogU2hhZG93Um9vdCogRWxlbWVudDo6c2hhZG93Um9vdCgpIGNvbnN0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oCmluZGV4IGQzOWE1YjhlYWJjMGE5NWE1M2FmMGQ3
YWQyYjQxZDJiZjM5YjhmYjkuLjU0NjcwM2FlNDAxYjBjYWFlYTdmZDI0MWQ3YmQwZTU4YWUxOWFj
ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oCkBAIC0zNzAs
NiArMzcwLDEwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIGRp
ZExvc2VXZWJHTENvbnRleHQoaW50KSB7IH0KICNlbmRpZgogCisjaWYgRU5BQkxFKENVU1RPTV9F
TEVNRU5UUykKKyAgICAgICAgdmlydHVhbCBib29sIGlzVXNlckFnZW50Q3VzdG9tRWxlbWVudE5h
bWUoU3RyaW5nIC8qbmFtZSovKSB7IHJldHVybiBmYWxzZTsgfQorI2VuZGlmCisKICAgICAgICAg
Ly8gSWYgYW4gSFRNTCBkb2N1bWVudCBpcyBiZWluZyBsb2FkZWQsIGluZm9ybXMgdGhlIGVtYmVk
ZGVyIHRoYXQgdGhlIGRvY3VtZW50IHdpbGwgaGF2ZSBpdHMgPGJvZHk+IGF0dGFjaGVkIHNvb24u
CiAgICAgICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxJbnNlcnRCb2R5KCkgeyB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lQ2xpZW50Lmgg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZUNsaWVudC5oCmluZGV4IGIz
MDc2ZTBlZmNhNmY3OTU3OTBlODcwOTgzMjJhOWY4M2VhMjI3MjAuLjMyYmRhYzE1OWUzODRiMWJl
ZmYxNzdjZmZjNTJhMGUzYTJlYzUzNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vcHVibGljL1dlYkZyYW1lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9w
dWJsaWMvV2ViRnJhbWVDbGllbnQuaApAQCAtNDMwLDYgKzQzMCwxMyBAQCBwdWJsaWM6CiAgICAg
Ly8gUGxhdGZvcm06OmN1cnJlbnQoKS0+dXNlckFnZW50KCkgd2lsbCBiZSBjYWxsZWQgdG8gcHJv
dmlkZSBvbmUuCiAgICAgdmlydHVhbCBXZWJTdHJpbmcgdXNlckFnZW50T3ZlcnJpZGUoV2ViRnJh
bWUqLCBjb25zdCBXZWJVUkwmIHVybCkgeyByZXR1cm4gV2ViU3RyaW5nKCk7IH0KIAorICAgIC8v
IEN1c3N0b20gRWxlbWVudCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tCisKKyAgICAvLyBBc2tzIHdoZXRoZXIgZ2l2ZW4gZWxlbWVudCBuYW1lIGlzIHVzZWQgYXMg
YSBlbWJlZGRlci1wcm92aWRpbmcKKyAgICAvLyBjdXN0b20gZWxlbWVudC4gU3VjaCBjdXN0b20g
ZWxlbWVudHMgY2FuIGhhdmUgbmFtZXMgd2l0aG91dCBoeXBoZW4sCisgICAgLy8gYW5kIHRoZWly
IHNoYWRvdyB0cmVlcyBhcmVuJ3QgdHJhdmVyc2FibGUuCisgICAgdmlydHVhbCBib29sIGlzVXNl
ckFnZW50Q3VzdG9tRWxlbWVudE5hbWUoV2ViRnJhbWUqLCBXZWJTdHJpbmcpIHsgcmV0dXJuIGZh
bHNlOyB9CisKICAgICAvLyBXZWJHTCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogICAgIC8vIEFza3MgdGhlIGVtYmVkZGVyIHdoZXRoZXIg
V2ViR0wgaXMgYWxsb3dlZCBmb3IgdGhlIGdpdmVuIFdlYkZyYW1lLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKaW5kZXggODA5
MTU4OTMyZjZhNmI4NmI1NmFlYWM4MGMzNTcyOTE1ZjQwMjg4Ny4uOGJhMDIwZTZjMWQ2M2Q0ZjY0
NzVkYmY4MTRmZmZkODI2MTZkMTUxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwCkBAIC0xNjcyLDYgKzE2NzIsMTUgQEAg
dm9pZCBGcmFtZUxvYWRlckNsaWVudEltcGw6OmRpZFJlcXVlc3RBdXRvY29tcGxldGUoUGFzc1Jl
ZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGEKIH0KICNlbmRpZgogCisjaWYgRU5BQkxFKENVU1RPTV9F
TEVNRU5UUykKK2Jvb2wgRnJhbWVMb2FkZXJDbGllbnRJbXBsOjppc1VzZXJBZ2VudEN1c3RvbUVs
ZW1lbnROYW1lKFN0cmluZyBuYW1lKQoreworICAgIGlmIChtX3dlYkZyYW1lLT5jbGllbnQoKSkK
KyAgICAgICAgcmV0dXJuIG1fd2ViRnJhbWUtPmNsaWVudCgpLT5pc1VzZXJBZ2VudEN1c3RvbUVs
ZW1lbnROYW1lKG1fd2ViRnJhbWUsIG5hbWUpOworICAgIHJldHVybiBmYWxzZTsKK30KKyNlbmRp
ZgorCiAjaWYgRU5BQkxFKFdFQkdMKQogYm9vbCBGcmFtZUxvYWRlckNsaWVudEltcGw6OmFsbG93
V2ViR0woYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuaCBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5oCmluZGV4IDNmMGM4MWY5ZjU3MzFh
MDY2NDIzMGEzMWNjMGI5Y2YwMjMwM2M1NDcuLjk2YjRiNjIwN2UxODQzMzA5MGY1MTgxNjA1ODRl
ZjIzMTRmMWZhMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1l
TG9hZGVyQ2xpZW50SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1l
TG9hZGVyQ2xpZW50SW1wbC5oCkBAIC0yMDAsNiArMjAwLDcgQEAgcHVibGljOgogICAgIHZpcnR1
YWwgdm9pZCBkaWRQZXJmb3JtRmlyc3ROYXZpZ2F0aW9uKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2
b2lkIHJlZ2lzdGVyRm9ySWNvbk5vdGlmaWNhdGlvbihib29sIGxpc3RlbiA9IHRydWUpOwogICAg
IHZpcnR1YWwgdm9pZCBkaWRDaGFuZ2VTY3JvbGxPZmZzZXQoKTsKKyAgICB2aXJ0dWFsIGJvb2wg
aXNVc2VyQWdlbnRDdXN0b21FbGVtZW50TmFtZShTdHJpbmcpOwogICAgIHZpcnR1YWwgYm9vbCBh
bGxvd1NjcmlwdChib29sIGVuYWJsZWRQZXJTZXR0aW5ncyk7CiAgICAgdmlydHVhbCBib29sIGFs
bG93U2NyaXB0RnJvbVNvdXJjZShib29sIGVuYWJsZWRQZXJTZXR0aW5ncywgY29uc3QgV2ViQ29y
ZTo6S1VSTCYgc2NyaXB0VVJMKTsKICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dQbHVnaW5zKGJvb2wg
ZW5hYmxlZFBlclNldHRpbmdzKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>193097</attachid>
            <date>2013-03-14 03:07:13 -0700</date>
            <delta_ts>2013-03-15 12:26:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112094-20130314190309.patch</filename>
            <type>text/plain</type>
            <size>9036</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1Nzk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWY2OGY1ZmYxYjhiOGM3
MzI4M2Y0YjI4YTEyZTg3YTdjY2Y5NGQwYi4uNTczNzYyNTJlMGYyMzM5ZmM3Y2ZmZjViZDQxNDgz
NDI5YTUwODIyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEzLTAzLTEyICBIYWpp
bWUgTW9ycml0YSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEVt
YmVkZGVyIHNob3VsZCBiZSBhYmxlIHRvIGRlZmluZSBidWlsdC1pbiBsaWtlIGN1c3RvbSBlbGVt
ZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEy
MDk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRk
ZWQgRnJhbWVMb2FkZXJDbGllbnQ6OmlzVXNlckFnZW50Q3VzdG9tRWxlbWVudE5hbWUoKSBhbmQg
YXNrIGl0IHdoZW4KKyAgICAgICAgY3JlYXRpbmcgbmV3IHNoYWRvdyByb290IGFuZCByZWdpc3Rl
cmluZyBuZXcgY3VzdG9tIGVsZW1lbnQgZGVmaW5pdGlvbi4KKworICAgICAgICAqIGRvbS9DdXN0
b21FbGVtZW50UmVnaXN0cnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q3VzdG9tRWxlbWVudFJl
Z2lzdHJ5Ojppc1ZhbGlkTmFtZSk6CisgICAgICAgICogZG9tL0N1c3RvbUVsZW1lbnRSZWdpc3Ry
eS5oOgorICAgICAgICAoQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5KToKKyAgICAgICAgKiBkb20vRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzaGFkb3dUeXBlT2YpOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpjcmVhdGVTaGFkb3dSb290KToKKyAg
ICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaDoKKyAgICAgICAgKEZyYW1lTG9hZGVy
Q2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50Ojppc1VzZXJBZ2Vu
dEN1c3RvbUVsZW1lbnROYW1lKToKKwogMjAxMy0wMy0xNCAgU2VyZ2lvIFZpbGxhciBTZW5pbiAg
PHN2aWxsYXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBFbXB0eSBsaXN0IGl0ZW1zIGFmdGVyIGRy
YWcmZHJvcCBpbiBjb250ZW50RWRpdGFibGUgZGl2cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpp
bmRleCA0ZTYzNzg0NzNmZmZmMDAwMzg3OTBhYWE5ZTlhZGEyOTExOWFlN2MyLi4yODlmN2EzNjg0
MjllMTYxMjE4N2Q1YmIxYWVjZmQ2Y2IwZTEyMTQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDIyIEBACisyMDEzLTAzLTEyICBIYWppbWUgTW9ycml0YSAgPG1vcnJpdGFA
Z29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEVtYmVkZGVyIHNob3VsZCBiZSBhYmxl
IHRvIGRlZmluZSBidWlsdC1pbiBsaWtlIGN1c3RvbSBlbGVtZW50cworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEyMDk0CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgLSBHYXZlIGFuIGltcGxlbWVudGF0aW9u
IG9mIEZyYW1lTG9hZGVyQ2xpZW50Ojppc1VzZXJBZ2VudEN1c3RvbUVsZW1lbnROYW1lKCkKKyAg
ICAgICAgLSBBZGRlZCBXZWJGcmFtZUNsaWVudDppc1VzZXJBZ2VudEN1c3RvbUVsZW1lbnROYW1l
KCkKKworICAgICAgICAqIHB1YmxpYy9XZWJGcmFtZUNsaWVudC5oOgorICAgICAgICAoV2ViRnJh
bWVDbGllbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUNsaWVudDo6aXNVc2VyQWdlbnRD
dXN0b21FbGVtZW50TmFtZSk6CisgICAgICAgICogc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5j
cHA6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAoV2ViS2l0OjpGcmFtZUxvYWRlckNsaWVu
dEltcGw6OmlzVXNlckFnZW50Q3VzdG9tRWxlbWVudE5hbWUpOgorICAgICAgICAqIHNyYy9GcmFt
ZUxvYWRlckNsaWVudEltcGwuaDoKKyAgICAgICAgKEZyYW1lTG9hZGVyQ2xpZW50SW1wbCk6CisK
IDIwMTMtMDMtMTMgIFJpayBDYWJhbmllciAgPGNhYmFuaWVyQGFkb2JlLmNvbT4KIAogICAgICAg
ICBjcmVhdGUgcnVudGltZSBmbGFncyBmb3IgQ1NTIENvbXBvc2l0aW5nCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9DdXN0b21FbGVtZW50UmVnaXN0cnkuY3BwCmluZGV4IDQ4ODYzYmIxNWEwMDhmZWU0
NTA4MTljOGQ2ZWUyMjE4YWJhN2JkNzcuLjkzMWI4Y2ZkMmYyNmExMWUyNjMxZTU0ZWU1ZDQyZjcy
MGVhMjdkY2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9DdXN0b21FbGVtZW50UmVn
aXN0cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DdXN0b21FbGVtZW50UmVnaXN0cnku
Y3BwCkBAIC0zOSw2ICszOSw4IEBACiAjaW5jbHVkZSAiRGljdGlvbmFyeS5oIgogI2luY2x1ZGUg
IkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRWxlbWVudC5oIgorI2luY2x1ZGUgIkZyYW1lLmgiCisj
aW5jbHVkZSAiRnJhbWVMb2FkZXJDbGllbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNp
bmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5jbHVkZSA8d3RmL0FTQ0lJQ1R5
cGUuaD4KQEAgLTc2LDYgKzc4LDkgQEAgYm9vbCBDdXN0b21FbGVtZW50UmVnaXN0cnk6OmlzVmFs
aWROYW1lKGNvbnN0IEF0b21pY1N0cmluZyYgbmFtZSkKICAgICBpZiAoaHlwaGVuUG9zaXRpb24g
PT0gbm90Rm91bmQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAorICAgIGlmIChkb2N1bWVudCgp
LT5mcmFtZSgpICYmIGRvY3VtZW50KCktPmZyYW1lKCktPmxvYWRlcigpLT5jbGllbnQoKS0+aXNV
c2VyQWdlbnRDdXN0b21FbGVtZW50TmFtZShuYW1lKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisK
ICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFZlY3RvcjxBdG9taWNTdHJpbmc+LCByZXNlcnZlZE5h
bWVzLCAoKSk7CiAgICAgaWYgKHJlc2VydmVkTmFtZXMuaXNFbXB0eSgpKSB7CiAjaWYgRU5BQkxF
KE1BVEhNTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9DdXN0b21FbGVtZW50UmVn
aXN0cnkuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DdXN0b21FbGVtZW50UmVnaXN0cnkuaAppbmRl
eCAyMDgyY2Q3NjIyY2Y2MmVhYmUxMzZkNmFmYjI3YTRkYWE2MmU3MjdhLi5kY2NmYmQyOTRhNzEy
Mzk0ZjczNmEwZjNiYTUyZDZmNTU2MDRlYTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0N1c3Rv
bUVsZW1lbnRSZWdpc3RyeS5oCkBAIC02Niw3ICs2Niw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMg
UGFzc1JlZlB0cjxDdXN0b21FbGVtZW50Q29uc3RydWN0b3I+IGNvbnN0cnVjdG9yT2YoRWxlbWVu
dCopOwogICAgIAogcHJpdmF0ZToKLSAgICBzdGF0aWMgYm9vbCBpc1ZhbGlkTmFtZShjb25zdCBB
dG9taWNTdHJpbmcmKTsKKyAgICBib29sIGlzVmFsaWROYW1lKGNvbnN0IEF0b21pY1N0cmluZyYp
OwogCiAgICAgdHlwZWRlZiBIYXNoTWFwPFF1YWxpZmllZE5hbWU6OlF1YWxpZmllZE5hbWVJbXBs
KiwgUmVmUHRyPEN1c3RvbUVsZW1lbnRDb25zdHJ1Y3Rvcj4gPkNvbnN0cnVjdG9yTWFwOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRWxlbWVudC5jcHAKaW5kZXggMmViOWQ0MGE5N2ZjMGJkNDU4YjBlMjg0ZTU4NTlkZjU5
ZmUxNWZjZi4uMTA0YTcwZDg0ZDA3NjM3NTQ5ODA5YWNlMTM4NmMyNTEzMGM0MDQ5MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FbGVtZW50LmNwcApAQCAtNDMsNiArNDMsNyBAQAogI2luY2x1ZGUgIkZsb3dUaHJlYWRD
b250cm9sbGVyLmgiCiAjaW5jbHVkZSAiRm9jdXNDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiRnJh
bWUuaCIKKyNpbmNsdWRlICJGcmFtZUxvYWRlckNsaWVudC5oIgogI2luY2x1ZGUgIkZyYW1lVmll
dy5oIgogI2luY2x1ZGUgIkhUTUxDb2xsZWN0aW9uLmgiCiAjaW5jbHVkZSAiSFRNTERvY3VtZW50
LmgiCkBAIC0xNDc3LDYgKzE0NzgsMTYgQEAgdm9pZCBFbGVtZW50OjpkaWRBZmZlY3RTZWxlY3Rv
cihBZmZlY3RlZFNlbGVjdG9yTWFzayBtYXNrKQogICAgICAgICBlbGVtZW50U2hhZG93LT5kaWRB
ZmZlY3RTZWxlY3RvcihtYXNrKTsKIH0KIAorc3RhdGljIFNoYWRvd1Jvb3Q6OlNoYWRvd1Jvb3RU
eXBlIHNoYWRvd1R5cGVPZihFbGVtZW50KiBob3N0KQoreworI2lmIEVOQUJMRShDVVNUT01fRUxF
TUVOVFMpCisgICAgaWYgKGhvc3QtPmRvY3VtZW50KCktPmZyYW1lKCkgJiYgaG9zdC0+ZG9jdW1l
bnQoKS0+ZnJhbWUoKS0+bG9hZGVyKCktPmNsaWVudCgpLT5pc1VzZXJBZ2VudEN1c3RvbUVsZW1l
bnROYW1lKGhvc3QtPnRhZ05hbWUoKSkpCisgICAgICAgIHJldHVybiBTaGFkb3dSb290OjpVc2Vy
QWdlbnRTaGFkb3dSb290OworI2VuZGlmCisgICAgVU5VU0VEX1BBUkFNKGhvc3QpOworICAgIHJl
dHVybiBTaGFkb3dSb290OjpBdXRob3JTaGFkb3dSb290OworfQorCiBQYXNzUmVmUHRyPFNoYWRv
d1Jvb3Q+IEVsZW1lbnQ6OmNyZWF0ZVNoYWRvd1Jvb3QoRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAg
ICAgaWYgKGFsd2F5c0NyZWF0ZVVzZXJBZ2VudFNoYWRvd1Jvb3QoKSkKQEAgLTE0ODQsNyArMTQ5
NSw3IEBAIFBhc3NSZWZQdHI8U2hhZG93Um9vdD4gRWxlbWVudDo6Y3JlYXRlU2hhZG93Um9vdChF
eGNlcHRpb25Db2RlJiBlYykKIAogI2lmIEVOQUJMRShTSEFET1dfRE9NKQogICAgIGlmIChSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjphdXRob3JTaGFkb3dET01Gb3JBbnlFbGVtZW50RW5hYmxlZCgp
KQotICAgICAgICByZXR1cm4gZW5zdXJlU2hhZG93KCktPmFkZFNoYWRvd1Jvb3QodGhpcywgU2hh
ZG93Um9vdDo6QXV0aG9yU2hhZG93Um9vdCk7CisgICAgICAgIHJldHVybiBlbnN1cmVTaGFkb3co
KS0+YWRkU2hhZG93Um9vdCh0aGlzLCBzaGFkb3dUeXBlT2YodGhpcykpOwogI2VuZGlmCiAKICAg
ICAvLyBTaW5jZSBzb21lIGVsZW1lbnRzIHJlY3JlYXRlcyBzaGFkb3cgcm9vdCBkeW5hbWljYWxs
eSwgbXVsdGlwbGUgc2hhZG93CkBAIC0xNDk0LDcgKzE1MDUsNyBAQCBQYXNzUmVmUHRyPFNoYWRv
d1Jvb3Q+IEVsZW1lbnQ6OmNyZWF0ZVNoYWRvd1Jvb3QoRXhjZXB0aW9uQ29kZSYgZWMpCiAgICAg
ICAgIGVjID0gSElFUkFSQ0hZX1JFUVVFU1RfRVJSOwogICAgICAgICByZXR1cm4gMDsKICAgICB9
Ci0gICAgcmV0dXJuIGVuc3VyZVNoYWRvdygpLT5hZGRTaGFkb3dSb290KHRoaXMsIFNoYWRvd1Jv
b3Q6OkF1dGhvclNoYWRvd1Jvb3QpOworICAgIHJldHVybiBlbnN1cmVTaGFkb3coKS0+YWRkU2hh
ZG93Um9vdCh0aGlzLCBzaGFkb3dUeXBlT2YodGhpcykpOwogfQogCiBTaGFkb3dSb290KiBFbGVt
ZW50OjpzaGFkb3dSb290KCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9GcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVy
Q2xpZW50LmgKaW5kZXggZDM5YTViOGVhYmMwYTk1YTUzYWYwZDdhZDJiNDFkMmJmMzliOGZiOS4u
ZDIxYzgwZTcxMjVlYzg3ZTk2N2RlZjY2NWQyNDI1OGI4MzljMzE4NCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTM3MCw2ICszNzAsMTAgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkTG9zZVdlYkdMQ29udGV4dChp
bnQpIHsgfQogI2VuZGlmCiAKKyNpZiBFTkFCTEUoQ1VTVE9NX0VMRU1FTlRTKQorICAgICAgICB2
aXJ0dWFsIGJvb2wgaXNVc2VyQWdlbnRDdXN0b21FbGVtZW50TmFtZShjb25zdCBTdHJpbmcmIC8q
bmFtZSovKSB7IHJldHVybiBmYWxzZTsgfQorI2VuZGlmCisKICAgICAgICAgLy8gSWYgYW4gSFRN
TCBkb2N1bWVudCBpcyBiZWluZyBsb2FkZWQsIGluZm9ybXMgdGhlIGVtYmVkZGVyIHRoYXQgdGhl
IGRvY3VtZW50IHdpbGwgaGF2ZSBpdHMgPGJvZHk+IGF0dGFjaGVkIHNvb24uCiAgICAgICAgIHZp
cnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxJbnNlcnRCb2R5KCkgeyB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZUNsaWVudC5oCmluZGV4IGUwZWViYmZjZjhjZGZi
ZDNkM2U4ZTczNTViNTBmMjkxZWVlNjNlNmEuLmY5Yzc5ZTg5YmNkZDhkNDJlYzkyNmFlMTM5ZjYy
YmEzNTUwZDYxZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dl
YkZyYW1lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRnJh
bWVDbGllbnQuaApAQCAtNDI1LDYgKzQyNSwxMyBAQCBwdWJsaWM6CiAgICAgLy8gUGxhdGZvcm06
OmN1cnJlbnQoKS0+dXNlckFnZW50KCkgd2lsbCBiZSBjYWxsZWQgdG8gcHJvdmlkZSBvbmUuCiAg
ICAgdmlydHVhbCBXZWJTdHJpbmcgdXNlckFnZW50T3ZlcnJpZGUoV2ViRnJhbWUqLCBjb25zdCBX
ZWJVUkwmIHVybCkgeyByZXR1cm4gV2ViU3RyaW5nKCk7IH0KIAorICAgIC8vIEN1c3N0b20gRWxl
bWVudCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICAv
LyBBc2tzIHdoZXRoZXIgZ2l2ZW4gZWxlbWVudCBuYW1lIGlzIHVzZWQgYXMgYSBlbWJlZGRlci1w
cm92aWRpbmcKKyAgICAvLyBjdXN0b20gZWxlbWVudC4gU3VjaCBjdXN0b20gZWxlbWVudHMgY2Fu
IGhhdmUgbmFtZXMgd2l0aG91dCBoeXBoZW4sCisgICAgLy8gYW5kIHRoZWlyIHNoYWRvdyB0cmVl
cyBhcmVuJ3QgdHJhdmVyc2FibGUuCisgICAgdmlydHVhbCBib29sIGlzVXNlckFnZW50Q3VzdG9t
RWxlbWVudE5hbWUoV2ViRnJhbWUqLCBjb25zdCBXZWJTdHJpbmcmKSB7IHJldHVybiBmYWxzZTsg
fQorCiAgICAgLy8gV2ViR0wgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCiAKICAgICAvLyBBc2tzIHRoZSBlbWJlZGRlciB3aGV0aGVyIFdlYkdM
IGlzIGFsbG93ZWQgZm9yIHRoZSBnaXZlbiBXZWJGcmFtZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwCmluZGV4IDgwOTE1ODkz
MmY2YTZiODZiNTZhZWFjODBjMzU3MjkxNWY0MDI4ODcuLmRlNzFkYWI5NTNiZjc5M2Q1NWVhN2Yw
YjI5Y2U2Y2ViYmY2MmU4ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcApAQCAtMTY3Miw2ICsxNjcyLDE1IEBAIHZvaWQg
RnJhbWVMb2FkZXJDbGllbnRJbXBsOjpkaWRSZXF1ZXN0QXV0b2NvbXBsZXRlKFBhc3NSZWZQdHI8
Rm9ybVN0YXRlPiBmb3JtU3RhCiB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShDVVNUT01fRUxFTUVO
VFMpCitib29sIEZyYW1lTG9hZGVyQ2xpZW50SW1wbDo6aXNVc2VyQWdlbnRDdXN0b21FbGVtZW50
TmFtZShjb25zdCBTdHJpbmcmIG5hbWUpCit7CisgICAgaWYgKG1fd2ViRnJhbWUtPmNsaWVudCgp
KQorICAgICAgICByZXR1cm4gbV93ZWJGcmFtZS0+Y2xpZW50KCktPmlzVXNlckFnZW50Q3VzdG9t
RWxlbWVudE5hbWUobV93ZWJGcmFtZSwgbmFtZSk7CisgICAgcmV0dXJuIGZhbHNlOworfQorI2Vu
ZGlmCisKICNpZiBFTkFCTEUoV0VCR0wpCiBib29sIEZyYW1lTG9hZGVyQ2xpZW50SW1wbDo6YWxs
b3dXZWJHTChib29sIGVuYWJsZWRQZXJTZXR0aW5ncykKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5oIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmgKaW5kZXggM2YwYzgxZjlmNTcz
MWEwNjY0MjMwYTMxY2MwYjljZjAyMzAzYzU0Ny4uNWUwNjA3YTIzZTc5ZmYyMmI0OWMwMjcwNzRl
NGQ5MWU3ZTQ3N2YyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJh
bWVMb2FkZXJDbGllbnRJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJh
bWVMb2FkZXJDbGllbnRJbXBsLmgKQEAgLTIwMCw2ICsyMDAsNyBAQCBwdWJsaWM6CiAgICAgdmly
dHVhbCB2b2lkIGRpZFBlcmZvcm1GaXJzdE5hdmlnYXRpb24oKSBjb25zdDsKICAgICB2aXJ0dWFs
IHZvaWQgcmVnaXN0ZXJGb3JJY29uTm90aWZpY2F0aW9uKGJvb2wgbGlzdGVuID0gdHJ1ZSk7CiAg
ICAgdmlydHVhbCB2b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNldCgpOworICAgIHZpcnR1YWwgYm9v
bCBpc1VzZXJBZ2VudEN1c3RvbUVsZW1lbnROYW1lKGNvbnN0IFN0cmluZyYpOwogICAgIHZpcnR1
YWwgYm9vbCBhbGxvd1NjcmlwdChib29sIGVuYWJsZWRQZXJTZXR0aW5ncyk7CiAgICAgdmlydHVh
bCBib29sIGFsbG93U2NyaXB0RnJvbVNvdXJjZShib29sIGVuYWJsZWRQZXJTZXR0aW5ncywgY29u
c3QgV2ViQ29yZTo6S1VSTCYgc2NyaXB0VVJMKTsKICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dQbHVn
aW5zKGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKTsK
</data>
<flag name="review"
          id="214510"
          type_id="1"
          status="-"
          setter="abarth"
    />
          </attachment>
      

    </bug>

</bugzilla>