<?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>106871</bug_id>
          
          <creation_ts>2013-01-14 22:09:24 -0800</creation_ts>
          <short_desc>Update GraphicsContext to support winding rule in clip operator for Core Graphics</short_desc>
          <delta_ts>2013-01-16 23:24:46 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>106188</blocked>
    
    <blocked>106872</blocked>
    
    <blocked>106873</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Rik Cabanier">cabanier</reporter>
          <assigned_to name="Rik Cabanier">cabanier</assigned_to>
          <cc>dino</cc>
    
    <cc>d-r</cc>
    
    <cc>junov</cc>
    
    <cc>krit</cc>
    
    <cc>noam</cc>
    
    <cc>senorblanco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>806985</commentid>
    <comment_count>0</comment_count>
    <who name="Rik Cabanier">cabanier</who>
    <bug_when>2013-01-14 22:09:24 -0800</bug_when>
    <thetext>the GraphicsContext interface does not support passing a winding rule to the canvas clip operator.
Update the GraphicsContext interface for all platforms + add support for  eoclip</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>808639</commentid>
    <comment_count>1</comment_count>
      <attachid>183024</attachid>
    <who name="Rik Cabanier">cabanier</who>
    <bug_when>2013-01-16 13:03:35 -0800</bug_when>
    <thetext>Created attachment 183024
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>808724</commentid>
    <comment_count>2</comment_count>
      <attachid>183024</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2013-01-16 14:31:14 -0800</bug_when>
    <thetext>Comment on attachment 183024
Patch

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

Looks like you are going to go the wrong way. We already have clipPath which should do what you want. And I am not really a friend of leaving the other ports behind when it would be fairly easy to implement there as well. However, this bug should be mainly invalid.

&gt; Source/WebCore/ChangeLog:5
&gt; +

Can you please summarize your changes and what they are good for here please?

&gt; Source/WebCore/ChangeLog:11
&gt; +        * platform/graphics/GraphicsContext.h: Change canvasClip and clip signature with default winding rule

End sentences please.

&gt; Source/WebCore/ChangeLog:12
&gt; +        * platform/graphics/cairo/GraphicsContextCairo.cpp: Update interface with new signature so it still compiles

Ditto.... And in a couple of other lines as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>808859</commentid>
    <comment_count>3</comment_count>
      <attachid>183065</attachid>
    <who name="Rik Cabanier">cabanier</who>
    <bug_when>2013-01-16 17:03:40 -0800</bug_when>
    <thetext>Created attachment 183065
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>809080</commentid>
    <comment_count>4</comment_count>
      <attachid>183065</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2013-01-16 22:15:56 -0800</bug_when>
    <thetext>Comment on attachment 183065
Patch

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

We discussed the behavior of all the different clip function on IRC. clipPath(Path, WindRule) is not doing the same as clip(Path, WindRule). So it seems indeed the better solution to edit clip() and add the WindRule there.

&gt; Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp:995
&gt; +// FIXME: don&apos;t ignore the winding rule. https://bugs.webkit.org/show_bug.cgi?id=107065
&gt; +void GraphicsContext::clip(const Path&amp; path, WindRule)

usually we put it into the function, but this is not blocking this patch. Just for the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>809115</commentid>
    <comment_count>5</comment_count>
      <attachid>183065</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-16 23:24:42 -0800</bug_when>
    <thetext>Comment on attachment 183065
Patch

Clearing flags on attachment: 183065

Committed r139967: &lt;http://trac.webkit.org/changeset/139967&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>809116</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-16 23:24:46 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>183024</attachid>
            <date>2013-01-16 13:03:35 -0800</date>
            <delta_ts>2013-01-16 17:03:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106871-20130116130035.patch</filename>
            <type>text/plain</type>
            <size>10383</size>
            <attacher name="Rik Cabanier">cabanier</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzOTkxMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDEzLTAxLTE2ICBSaWsgQ2Fi
YW5pZXIgIDxjYWJhbmllckBhZG9iZS5jb20+CisKKyAgICAgICAgVXBkYXRlIEdyYXBoaWNzQ29u
dGV4dCB0byBzdXBwb3J0IHdpbmRpbmcgcnVsZSBpbiBjbGlwIG9wZXJhdG9yIGZvciBDb3JlIEdy
YXBoaWNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MDY4NzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBO
byBuZXcgdGVzdHMsIG5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorCisgICAgICAgICogV2Vi
Q29yZS5leHAuaW46IENoYW5nZSBzaWduYXR1cmUgb2YgY2FudmFzQ2xpcCBmdW5jdGlvbgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oOiBDaGFuZ2UgY2FudmFz
Q2xpcCBhbmQgY2xpcCBzaWduYXR1cmUgd2l0aCBkZWZhdWx0IHdpbmRpbmcgcnVsZQorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENhaXJvLmNwcDogVXBk
YXRlIGludGVyZmFjZSB3aXRoIG5ldyBzaWduYXR1cmUgc28gaXQgc3RpbGwgY29tcGlsZXMKKyAg
ICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6Y2xpcCk6CisgICAgICAgIChXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHQ6OmNhbnZhc0NsaXApOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2NnL0dyYXBoaWNzQ29udGV4dENHLmNwcDogVXBkYXRlIGludGVyZmFjZSB3aXRoIG5ldyBz
aWduYXR1cmUgYW5kIGltcGxlbWVudCB3aW5kaW5nIHJ1bGVzCisgICAgICAgIChXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHQ6OmNsaXApOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0
OjpjYW52YXNDbGlwKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9vcGVudmcvR3JhcGhp
Y3NDb250ZXh0T3BlblZHLmNwcDogVXBkYXRlIGludGVyZmFjZSB3aXRoIG5ldyBzaWduYXR1cmUg
c28gaXQgc3RpbGwgY29tcGlsZXMKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6
Y2xpcCk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmNhbnZhc0NsaXApOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dFF0LmNwcDogVXBk
YXRlIGludGVyZmFjZSB3aXRoIG5ldyBzaWduYXR1cmUgc28gaXQgc3RpbGwgY29tcGlsZXMKKyAg
ICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6Y2xpcCk6CisgICAgICAgIChXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHQ6OmNhbnZhc0NsaXApOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL3NraWEvR3JhcGhpY3NDb250ZXh0U2tpYS5jcHA6IFVwZGF0ZSBpbnRlcmZhY2Ugd2l0aCBu
ZXcgc2lnbmF0dXJlIHNvIGl0IHN0aWxsIGNvbXBpbGVzCisgICAgICAgIChXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHQ6OmNsaXApOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0Ojpj
YW52YXNDbGlwKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy93aW5jZS9HcmFwaGljc0Nv
bnRleHRXaW5DRS5jcHA6IFVwZGF0ZSBpbnRlcmZhY2Ugd2l0aCBuZXcgc2lnbmF0dXJlIHNvIGl0
IHN0aWxsIGNvbXBpbGVzCisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmNsaXAp
OgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0OjpjYW52YXNDbGlwKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy93eC9HcmFwaGljc0NvbnRleHRXeC5jcHA6IFVwZGF0ZSBp
bnRlcmZhY2Ugd2l0aCBuZXcgc2lnbmF0dXJlIHNvIGl0IHN0aWxsIGNvbXBpbGVzCisgICAgICAg
IChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmNsaXApOgorICAgICAgICAoV2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0OjpjYW52YXNDbGlwKToKKwogMjAxMy0wMS0xNiAgQXJuYXVkIFJlbmV2aWVy
ICA8YS5yZW5ldmllckBzaXNhLnNhbXN1bmcuY29tPgogCiAgICAgICAgIGluY29uc2lzdGVuY3kg
aW4gZHJhd0ltYWdlIHdpdGggdGFyZ2V0IHJlY3QgbmVnYXRpdmUgZGltZW5zaW9ucy4KSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL1dlYkNvcmUuZXhwLmluCShyZXZpc2lvbiAxMzk3MTYpCisrKyBTb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmV4cC5pbgkod29ya2luZyBjb3B5KQpAQCAtMzk4LDcgKzM5OCw3IEBAIF9fWk43V2Vi
Q29yZTE1R3JhcGhpY3NDb250ZXh0MjFzZXRDb21wb3MKIF9fWk43V2ViQ29yZTE1R3JhcGhpY3ND
b250ZXh0MjJhcHBseURldmljZVNjYWxlRmFjdG9yRWYKIF9fWk43V2ViQ29yZTE1R3JhcGhpY3ND
b250ZXh0MjJiZWdpblRyYW5zcGFyZW5jeUxheWVyRWYKIF9fWk43V2ViQ29yZTE1R3JhcGhpY3ND
b250ZXh0MjhzZXRJbWFnZUludGVycG9sYXRpb25RdWFsaXR5RU5TXzIwSW50ZXJwb2xhdGlvblF1
YWxpdHlFCi1fX1pON1dlYkNvcmUxNUdyYXBoaWNzQ29udGV4dDRjbGlwRVJLTlNfNFBhdGhFCitf
X1pON1dlYkNvcmUxNUdyYXBoaWNzQ29udGV4dDRjbGlwRVJLTlNfNFBhdGhFTlNfOFdpbmRSdWxl
RQogX19aTjdXZWJDb3JlMTVHcmFwaGljc0NvbnRleHQ0Y2xpcEVSS05TXzdJbnRSZWN0RQogX19a
TjdXZWJDb3JlMTVHcmFwaGljc0NvbnRleHQ0Y2xpcEVSS05TXzlGbG9hdFJlY3RFCiBfX1pON1dl
YkNvcmUxNUdyYXBoaWNzQ29udGV4dDRzYXZlRXYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oCShyZXZpc2lvbiAxMzk3MTYp
CisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaAko
d29ya2luZyBjb3B5KQpAQCAtNDA3LDEyICs0MDcsMTIgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgICAgICB2b2lkIHNldENvbXBvc2l0ZU9wZXJhdGlvbihDb21wb3NpdGVPcGVyYXRvciwgQmxl
bmRNb2RlID0gQmxlbmRNb2RlTm9ybWFsKTsKICAgICAgICAgQ29tcG9zaXRlT3BlcmF0b3IgY29t
cG9zaXRlT3BlcmF0aW9uKCkgY29uc3Q7CiAKLSAgICAgICAgdm9pZCBjbGlwKGNvbnN0IFBhdGgm
KTsKKyAgICAgICAgdm9pZCBjbGlwKGNvbnN0IFBhdGgmLCBXaW5kUnVsZSA9IFJVTEVfRVZFTk9E
RCk7CiAKICAgICAgICAgLy8gVGhpcyBjbGlwIGZ1bmN0aW9uIGlzIHVzZWQgb25seSBieSA8Y2Fu
dmFzPiBjb2RlLiBJdCBhbGxvd3MKICAgICAgICAgLy8gaW1wbGVtZW50YXRpb25zIHRvIGhhbmRs
ZSBjbGlwcGluZyBvbiB0aGUgY2FudmFzIGRpZmZlcmVudGx5IHNpbmNlCiAgICAgICAgIC8vIHRo
ZSBkaXNjaXBsaW5lIGlzIGRpZmZlcmVudC4KLSAgICAgICAgdm9pZCBjYW52YXNDbGlwKGNvbnN0
IFBhdGgmKTsKKyAgICAgICAgdm9pZCBjYW52YXNDbGlwKGNvbnN0IFBhdGgmLCBXaW5kUnVsZSA9
IFJVTEVfRVZFTk9ERCk7CiAgICAgICAgIHZvaWQgY2xpcE91dChjb25zdCBQYXRoJik7CiAKICAg
ICAgICAgdm9pZCBzY2FsZShjb25zdCBGbG9hdFNpemUmKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENhaXJvLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0Nv
bnRleHRDYWlyby5jcHAJKHJldmlzaW9uIDEzOTcxNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENhaXJvLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtOTkxLDcgKzk5MSw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpzZXRQbGF0Zm9ybUNv
bXBvc2kKICAgICBjYWlyb19zZXRfb3BlcmF0b3IocGxhdGZvcm1Db250ZXh0KCktPmNyKCksIHRv
Q2Fpcm9PcGVyYXRvcihvcCkpOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2xpcChjb25z
dCBQYXRoJiBwYXRoKQordm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3QgUGF0aCYgcGF0
aCwgV2luZFJ1bGUpCiB7CiAgICAgaWYgKHBhaW50aW5nRGlzYWJsZWQoKSkKICAgICAgICAgcmV0
dXJuOwpAQCAtMTAwOSw5ICsxMDA5LDkgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29u
c3QgUGF0aCYgcAogICAgIG1fZGF0YS0+Y2xpcChwYXRoKTsKIH0KIAotdm9pZCBHcmFwaGljc0Nv
bnRleHQ6OmNhbnZhc0NsaXAoY29uc3QgUGF0aCYgcGF0aCkKK3ZvaWQgR3JhcGhpY3NDb250ZXh0
OjpjYW52YXNDbGlwKGNvbnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxlIGZpbGxSdWxlKQogewotICAg
IGNsaXAocGF0aCk7CisgICAgY2xpcChwYXRoLCBmaWxsUnVsZSk7CiB9CiAKIHZvaWQgR3JhcGhp
Y3NDb250ZXh0OjpjbGlwT3V0KGNvbnN0IFBhdGgmIHBhdGgpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRDRy5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cu
Y3BwCShyZXZpc2lvbiAxMzk3MTYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jZy9HcmFwaGljc0NvbnRleHRDRy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEzMTcsNyArMTMx
Nyw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpzZXRMaW5lSm9pbihMaW5lSm8KICAgICB9CiB9
CiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNvbnN0IFBhdGgmIHBhdGgpCit2b2lkIEdy
YXBoaWNzQ29udGV4dDo6Y2xpcChjb25zdCBQYXRoJiBwYXRoLCBXaW5kUnVsZSBmaWxsUnVsZSkK
IHsKICAgICBpZiAocGFpbnRpbmdEaXNhYmxlZCgpKQogICAgICAgICByZXR1cm47CkBAIC0xMzMx
LDE0ICsxMzMxLDE3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNvbnN0IFBhdGgmIHAK
ICAgICBlbHNlIHsKICAgICAgICAgQ0dDb250ZXh0QmVnaW5QYXRoKGNvbnRleHQpOwogICAgICAg
ICBDR0NvbnRleHRBZGRQYXRoKGNvbnRleHQsIHBhdGgucGxhdGZvcm1QYXRoKCkpOwotICAgICAg
ICBDR0NvbnRleHRDbGlwKGNvbnRleHQpOworICAgICAgICBpZiAoZmlsbFJ1bGUgPT0gUlVMRV9F
VkVOT0REKQorICAgICAgICAgICAgQ0dDb250ZXh0Q2xpcChjb250ZXh0KTsKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgQ0dDb250ZXh0RU9DbGlwKGNvbnRleHQpOwogICAgIH0KICAgICBtX2Rh
dGEtPmNsaXAocGF0aCk7CiB9CiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0OjpjYW52YXNDbGlwKGNv
bnN0IFBhdGgmIHBhdGgpCit2b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2FudmFzQ2xpcChjb25zdCBQ
YXRoJiBwYXRoLCBXaW5kUnVsZSBmaWxsUnVsZSkKIHsKLSAgICBjbGlwKHBhdGgpOworICAgIGNs
aXAocGF0aCwgZmlsbFJ1bGUpOwogfQogCiB2b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2xpcE91dChj
b25zdCBQYXRoJiBwYXRoKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
b3BlbnZnL0dyYXBoaWNzQ29udGV4dE9wZW5WRy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbnZnL0dyYXBoaWNzQ29udGV4dE9wZW5WRy5jcHAJ
KHJldmlzaW9uIDEzOTcxNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29w
ZW52Zy9HcmFwaGljc0NvbnRleHRPcGVuVkcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNzksNyAr
Mzc5LDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OnNldFBsYXRmb3JtQ29tcG9zaQogICAgIG1f
ZGF0YS0+c2V0Q29tcG9zaXRlT3BlcmF0aW9uKG9wKTsKIH0KIAotdm9pZCBHcmFwaGljc0NvbnRl
eHQ6OmNsaXAoY29uc3QgUGF0aCYgcGF0aCkKK3ZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNv
bnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxlKQogewogICAgIGlmIChwYWludGluZ0Rpc2FibGVkKCkp
CiAgICAgICAgIHJldHVybjsKQEAgLTM4Nyw5ICszODcsOSBAQCB2b2lkIEdyYXBoaWNzQ29udGV4
dDo6Y2xpcChjb25zdCBQYXRoJiBwCiAgICAgbV9kYXRhLT5jbGlwUGF0aChwYXRoLCBQYWludGVy
T3BlblZHOjpJbnRlcnNlY3RDbGlwLCBtX3N0YXRlLmZpbGxSdWxlKTsKIH0KIAotdm9pZCBHcmFw
aGljc0NvbnRleHQ6OmNhbnZhc0NsaXAoY29uc3QgUGF0aCYgcGF0aCkKK3ZvaWQgR3JhcGhpY3ND
b250ZXh0OjpjYW52YXNDbGlwKGNvbnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxlIGZpbGxSdWxlKQog
ewotICAgIGNsaXAocGF0aCk7CisgICAgY2xpcChwYXRoLCBmaWxsUnVsZSk7CiB9CiAKIHZvaWQg
R3JhcGhpY3NDb250ZXh0OjpjbGlwT3V0KGNvbnN0IFBhdGgmIHBhdGgpCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHRRdC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250
ZXh0UXQuY3BwCShyZXZpc2lvbiAxMzk3MTYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHRRdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEyNTEs
NyArMTI1MSw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpzZXRQbGF0Zm9ybUNvbXBvc2kKICAg
ICBtX2RhdGEtPnAoKS0+c2V0Q29tcG9zaXRpb25Nb2RlKHRvUXRDb21wb3NpdGlvbk1vZGUob3Ap
KTsKIH0KIAotdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3QgUGF0aCYgcGF0aCkKK3Zv
aWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNvbnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxlKQogewog
ICAgIGlmIChwYWludGluZ0Rpc2FibGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTEyNjEsOSAr
MTI2MSw5IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNvbnN0IFBhdGgmIHAKICAgICBt
X2RhdGEtPnAoKS0+c2V0Q2xpcFBhdGgoY2xpcFBhdGgsIFF0OjpJbnRlcnNlY3RDbGlwKTsKIH0K
IAotdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNhbnZhc0NsaXAoY29uc3QgUGF0aCYgcGF0aCkKK3Zv
aWQgR3JhcGhpY3NDb250ZXh0OjpjYW52YXNDbGlwKGNvbnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxl
IGZpbGxSdWxlKQogewotICAgIGNsaXAocGF0aCk7CisgICAgY2xpcChwYXRoLCBmaWxsUnVsZSk7
CiB9CiAKIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwT3V0KGNvbnN0IFBhdGgmIHBhdGgpCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9za2lhL0dyYXBoaWNzQ29udGV4
dFNraWEuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3NraWEvR3JhcGhpY3NDb250ZXh0U2tpYS5jcHAJKHJldmlzaW9uIDEzOTcxNikKKysrIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3NraWEvR3JhcGhpY3NDb250ZXh0U2tpYS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTMxNCw3ICszMTQsNyBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDo6
Y2xpcChjb25zdCBGbG9hdFJlCiAgICAgcGxhdGZvcm1Db250ZXh0KCktPmNsaXBSZWN0KHJlY3Qp
OwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2xpcChjb25zdCBQYXRoJiBwYXRoKQordm9p
ZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3QgUGF0aCYgcGF0aCwgV2luZFJ1bGUpCiB7CiAg
ICAgaWYgKHBhaW50aW5nRGlzYWJsZWQoKSB8fCBwYXRoLmlzRW1wdHkoKSkKICAgICAgICAgcmV0
dXJuOwpAQCAtMzM3LDcgKzMzNyw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwUm91bmRl
ZFJlY3QoY28KICAgICBwbGF0Zm9ybUNvbnRleHQoKS0+Y2xpcFJSZWN0KHIsIFBsYXRmb3JtQ29u
dGV4dFNraWE6OkFudGlBbGlhc2VkKTsKIH0KIAotdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNhbnZh
c0NsaXAoY29uc3QgUGF0aCYgcGF0aCkKK3ZvaWQgR3JhcGhpY3NDb250ZXh0OjpjYW52YXNDbGlw
KGNvbnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxlKQogewogICAgIGlmIChwYWludGluZ0Rpc2FibGVk
KCkpCiAgICAgICAgIHJldHVybjsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3dpbmNlL0dyYXBoaWNzQ29udGV4dFdpbkNFLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW5jZS9HcmFwaGljc0NvbnRleHRXaW5DRS5jcHAJ
KHJldmlzaW9uIDEzOTcxNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dp
bmNlL0dyYXBoaWNzQ29udGV4dFdpbkNFLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTE5MiwxNCAr
MTE5MiwxNCBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDo6c2V0UGxhdGZvcm1Db21wb3NpCiAgICAg
bm90SW1wbGVtZW50ZWQoKTsKIH0KIAotdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3Qg
UGF0aCYgcGF0aCkKK3ZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNvbnN0IFBhdGgmIHBhdGgs
IFdpbmRSdWxlKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKLXZvaWQgR3JhcGhpY3ND
b250ZXh0OjpjYW52YXNDbGlwKGNvbnN0IFBhdGgmIHBhdGgpCit2b2lkIEdyYXBoaWNzQ29udGV4
dDo6Y2FudmFzQ2xpcChjb25zdCBQYXRoJiBwYXRoLCBXaW5kUnVsZSBmaWxsUnVsZSkKIHsKLSAg
ICBjbGlwKHBhdGgpOworICAgIGNsaXAocGF0aCwgZmlsbFJ1bGUpOwogfQogCiB2b2lkIEdyYXBo
aWNzQ29udGV4dDo6Y2xpcE91dChjb25zdCBQYXRoJikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3d4L0dyYXBoaWNzQ29udGV4dFd4LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93eC9HcmFwaGljc0NvbnRleHRXeC5jcHAJ
KHJldmlzaW9uIDEzOTcxNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3d4
L0dyYXBoaWNzQ29udGV4dFd4LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDY2LDcgKzQ2Niw3IEBA
IHZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3TGluZUZvckRvY3VtZW4KICAgICBtX2RhdGEtPmNv
bnRleHQtPkRyYXdMaW5lKG9yaWdpbi54KCksIG9yaWdpbi55KCksIG9yaWdpbi54KCkgKyB3aWR0
aCwgb3JpZ2luLnkoKSk7CiB9CiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNvbnN0IFBh
dGgmIHBhdGgpIAordm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3QgUGF0aCYgcGF0aCwg
V2luZFJ1bGUpIAogeyAKICAgICBpZiAocGFpbnRpbmdEaXNhYmxlZCgpKQogICAgICAgICByZXR1
cm47CkBAIC00NzksOSArNDc5LDkgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3Qg
UGF0aCYgcAogICAgICAgICBjbGlwUGF0aChwYXRoLCBSVUxFX05PTlpFUk8pOwogfQogCi12b2lk
IEdyYXBoaWNzQ29udGV4dDo6Y2FudmFzQ2xpcChjb25zdCBQYXRoJiBwYXRoKQordm9pZCBHcmFw
aGljc0NvbnRleHQ6OmNhbnZhc0NsaXAoY29uc3QgUGF0aCYgcGF0aCwgV2luZFJ1bGUgZmlsbFJ1
bGUpCiB7Ci0gICAgY2xpcChwYXRoKTsKKyAgICBjbGlwKHBhdGgsIGZpbGxSdWxlKTsKIH0KIAog
QWZmaW5lVHJhbnNmb3JtIEdyYXBoaWNzQ29udGV4dDo6Z2V0Q1RNKEluY2x1ZGVEZXZpY2VTY2Fs
ZSkgY29uc3QK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>183065</attachid>
            <date>2013-01-16 17:03:40 -0800</date>
            <delta_ts>2013-01-16 23:24:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106871-20130116170041.patch</filename>
            <type>text/plain</type>
            <size>11010</size>
            <attacher name="Rik Cabanier">cabanier</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzOTkxMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM5IEBACisyMDEzLTAxLTE2ICBSaWsgQ2Fi
YW5pZXIgIDxjYWJhbmllckBhZG9iZS5jb20+CisKKyAgICAgICAgVXBkYXRlIEdyYXBoaWNzQ29u
dGV4dCB0byBzdXBwb3J0IHdpbmRpbmcgcnVsZSBpbiBjbGlwIG9wZXJhdG9yIGZvciBDb3JlIEdy
YXBoaWNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MDY4NzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBD
aGFuZ2VkIHRoZSBpbnRlcmZhY2UgdG8gR3JhcGhpY3NDb250ZXh0IHNvIGl0J3MgcG9zc2libGUg
dG8gcGFzcyB0aGUgd2luZGluZworICAgICAgICBydWxlIHRvIGNhbnZhc0NsaXAoKSBhbmQgY2xp
cCgpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgbm8gY2hhbmdlIGluIGZ1bmN0aW9uYWxpdHku
CisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjogQ2hhbmdlIHNpZ25hdHVyZSBvZiBjYW52YXND
bGlwIGZ1bmN0aW9uLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4
dC5oOiBDaGFuZ2UgY2FudmFzQ2xpcCBhbmQgY2xpcCBzaWduYXR1cmUgd2l0aCBkZWZhdWx0IHdp
bmRpbmcgcnVsZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0Nv
bnRleHRDYWlyby5jcHA6IFVwZGF0ZSBpbnRlcmZhY2Ugd2l0aCBuZXcgc2lnbmF0dXJlIHNvIGl0
IHN0aWxsIGNvbXBpbGVzLgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0OjpjbGlw
KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6Y2FudmFzQ2xpcCk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cuY3BwOiBVcGRhdGUg
aW50ZXJmYWNlIHdpdGggbmV3IHNpZ25hdHVyZSBhbmQgaW1wbGVtZW50IHdpbmRpbmcgcnVsZXMu
CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmNsaXApOgorICAgICAgICAoV2Vi
Q29yZTo6R3JhcGhpY3NDb250ZXh0OjpjYW52YXNDbGlwKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9vcGVudmcvR3JhcGhpY3NDb250ZXh0T3BlblZHLmNwcDogVXBkYXRlIGludGVyZmFj
ZSB3aXRoIG5ldyBzaWduYXR1cmUgc28gaXQgc3RpbGwgY29tcGlsZXMuCisgICAgICAgIChXZWJD
b3JlOjpHcmFwaGljc0NvbnRleHQ6OmNsaXApOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0OjpjYW52YXNDbGlwKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFw
aGljc0NvbnRleHRRdC5jcHA6IFVwZGF0ZSBpbnRlcmZhY2Ugd2l0aCBuZXcgc2lnbmF0dXJlIHNv
IGl0IHN0aWxsIGNvbXBpbGVzLgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0Ojpj
bGlwKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6Y2FudmFzQ2xpcCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvc2tpYS9HcmFwaGljc0NvbnRleHRTa2lhLmNwcDog
VXBkYXRlIGludGVyZmFjZSB3aXRoIG5ldyBzaWduYXR1cmUgc28gaXQgc3RpbGwgY29tcGlsZXMu
CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmNsaXApOgorICAgICAgICAoV2Vi
Q29yZTo6R3JhcGhpY3NDb250ZXh0OjpjYW52YXNDbGlwKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy93aW5jZS9HcmFwaGljc0NvbnRleHRXaW5DRS5jcHA6IFVwZGF0ZSBpbnRlcmZhY2Ug
d2l0aCBuZXcgc2lnbmF0dXJlIHNvIGl0IHN0aWxsIGNvbXBpbGVzLgorICAgICAgICAoV2ViQ29y
ZTo6R3JhcGhpY3NDb250ZXh0OjpjbGlwKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dDo6Y2FudmFzQ2xpcCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvd3gvR3JhcGhp
Y3NDb250ZXh0V3guY3BwOiBVcGRhdGUgaW50ZXJmYWNlIHdpdGggbmV3IHNpZ25hdHVyZSBzbyBp
dCBzdGlsbCBjb21waWxlcy4KKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6Y2xp
cCk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmNhbnZhc0NsaXApOgorCiAy
MDEzLTAxLTE2ICBBcm5hdWQgUmVuZXZpZXIgIDxhLnJlbmV2aWVyQHNpc2Euc2Ftc3VuZy5jb20+
CiAKICAgICAgICAgaW5jb25zaXN0ZW5jeSBpbiBkcmF3SW1hZ2Ugd2l0aCB0YXJnZXQgcmVjdCBu
ZWdhdGl2ZSBkaW1lbnNpb25zLgpJbmRleDogU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4JKHJldmlzaW9uIDEz
OTcxNikKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCSh3b3JraW5nIGNvcHkpCkBA
IC0zOTgsNyArMzk4LDcgQEAgX19aTjdXZWJDb3JlMTVHcmFwaGljc0NvbnRleHQyMXNldENvbXBv
cwogX19aTjdXZWJDb3JlMTVHcmFwaGljc0NvbnRleHQyMmFwcGx5RGV2aWNlU2NhbGVGYWN0b3JF
ZgogX19aTjdXZWJDb3JlMTVHcmFwaGljc0NvbnRleHQyMmJlZ2luVHJhbnNwYXJlbmN5TGF5ZXJF
ZgogX19aTjdXZWJDb3JlMTVHcmFwaGljc0NvbnRleHQyOHNldEltYWdlSW50ZXJwb2xhdGlvblF1
YWxpdHlFTlNfMjBJbnRlcnBvbGF0aW9uUXVhbGl0eUUKLV9fWk43V2ViQ29yZTE1R3JhcGhpY3ND
b250ZXh0NGNsaXBFUktOU180UGF0aEUKK19fWk43V2ViQ29yZTE1R3JhcGhpY3NDb250ZXh0NGNs
aXBFUktOU180UGF0aEVOU184V2luZFJ1bGVFCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzQ29udGV4
dDRjbGlwRVJLTlNfN0ludFJlY3RFCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzQ29udGV4dDRjbGlw
RVJLTlNfOUZsb2F0UmVjdEUKIF9fWk43V2ViQ29yZTE1R3JhcGhpY3NDb250ZXh0NHNhdmVFdgpJ
bmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3ND
b250ZXh0LmgJKHJldmlzaW9uIDEzOTcxNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oCSh3b3JraW5nIGNvcHkpCkBAIC00MDcsMTIgKzQwNywx
MiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgc2V0Q29tcG9zaXRlT3BlcmF0
aW9uKENvbXBvc2l0ZU9wZXJhdG9yLCBCbGVuZE1vZGUgPSBCbGVuZE1vZGVOb3JtYWwpOwogICAg
ICAgICBDb21wb3NpdGVPcGVyYXRvciBjb21wb3NpdGVPcGVyYXRpb24oKSBjb25zdDsKIAotICAg
ICAgICB2b2lkIGNsaXAoY29uc3QgUGF0aCYpOworICAgICAgICB2b2lkIGNsaXAoY29uc3QgUGF0
aCYsIFdpbmRSdWxlID0gUlVMRV9FVkVOT0REKTsKIAogICAgICAgICAvLyBUaGlzIGNsaXAgZnVu
Y3Rpb24gaXMgdXNlZCBvbmx5IGJ5IDxjYW52YXM+IGNvZGUuIEl0IGFsbG93cwogICAgICAgICAv
LyBpbXBsZW1lbnRhdGlvbnMgdG8gaGFuZGxlIGNsaXBwaW5nIG9uIHRoZSBjYW52YXMgZGlmZmVy
ZW50bHkgc2luY2UKICAgICAgICAgLy8gdGhlIGRpc2NpcGxpbmUgaXMgZGlmZmVyZW50LgotICAg
ICAgICB2b2lkIGNhbnZhc0NsaXAoY29uc3QgUGF0aCYpOworICAgICAgICB2b2lkIGNhbnZhc0Ns
aXAoY29uc3QgUGF0aCYsIFdpbmRSdWxlID0gUlVMRV9FVkVOT0REKTsKICAgICAgICAgdm9pZCBj
bGlwT3V0KGNvbnN0IFBhdGgmKTsKIAogICAgICAgICB2b2lkIHNjYWxlKGNvbnN0IEZsb2F0U2l6
ZSYpOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhp
Y3NDb250ZXh0Q2Fpcm8uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENhaXJvLmNwcAkocmV2aXNpb24gMTM5NzE2
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250
ZXh0Q2Fpcm8uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05OTEsNyArOTkxLDggQEAgdm9pZCBHcmFw
aGljc0NvbnRleHQ6OnNldFBsYXRmb3JtQ29tcG9zaQogICAgIGNhaXJvX3NldF9vcGVyYXRvcihw
bGF0Zm9ybUNvbnRleHQoKS0+Y3IoKSwgdG9DYWlyb09wZXJhdG9yKG9wKSk7CiB9CiAKLXZvaWQg
R3JhcGhpY3NDb250ZXh0OjpjbGlwKGNvbnN0IFBhdGgmIHBhdGgpCisvLyBGSVhNRTogZG9uJ3Qg
aWdub3JlIHRoZSB3aW5kaW5nIHJ1bGUuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMDcwNjUKK3ZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNvbnN0IFBhdGgmIHBh
dGgsIFdpbmRSdWxlKQogewogICAgIGlmIChwYWludGluZ0Rpc2FibGVkKCkpCiAgICAgICAgIHJl
dHVybjsKQEAgLTEwMDksOSArMTAxMCw5IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNv
bnN0IFBhdGgmIHAKICAgICBtX2RhdGEtPmNsaXAocGF0aCk7CiB9CiAKLXZvaWQgR3JhcGhpY3ND
b250ZXh0OjpjYW52YXNDbGlwKGNvbnN0IFBhdGgmIHBhdGgpCit2b2lkIEdyYXBoaWNzQ29udGV4
dDo6Y2FudmFzQ2xpcChjb25zdCBQYXRoJiBwYXRoLCBXaW5kUnVsZSBmaWxsUnVsZSkKIHsKLSAg
ICBjbGlwKHBhdGgpOworICAgIGNsaXAocGF0aCwgZmlsbFJ1bGUpOwogfQogCiB2b2lkIEdyYXBo
aWNzQ29udGV4dDo6Y2xpcE91dChjb25zdCBQYXRoJiBwYXRoKQpJbmRleDogU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4dENH
LmNwcAkocmV2aXNpb24gMTM5NzE2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMzE3LDcgKzEz
MTcsNyBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDo6c2V0TGluZUpvaW4oTGluZUpvCiAgICAgfQog
fQogCi12b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2xpcChjb25zdCBQYXRoJiBwYXRoKQordm9pZCBH
cmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3QgUGF0aCYgcGF0aCwgV2luZFJ1bGUgZmlsbFJ1bGUp
CiB7CiAgICAgaWYgKHBhaW50aW5nRGlzYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMTMz
MSwxNCArMTMzMSwxNyBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2xpcChjb25zdCBQYXRoJiBw
CiAgICAgZWxzZSB7CiAgICAgICAgIENHQ29udGV4dEJlZ2luUGF0aChjb250ZXh0KTsKICAgICAg
ICAgQ0dDb250ZXh0QWRkUGF0aChjb250ZXh0LCBwYXRoLnBsYXRmb3JtUGF0aCgpKTsKLSAgICAg
ICAgQ0dDb250ZXh0Q2xpcChjb250ZXh0KTsKKyAgICAgICAgaWYgKGZpbGxSdWxlID09IFJVTEVf
RVZFTk9ERCkKKyAgICAgICAgICAgIENHQ29udGV4dENsaXAoY29udGV4dCk7CisgICAgICAgIGVs
c2UKKyAgICAgICAgICAgIENHQ29udGV4dEVPQ2xpcChjb250ZXh0KTsKICAgICB9CiAgICAgbV9k
YXRhLT5jbGlwKHBhdGgpOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2FudmFzQ2xpcChj
b25zdCBQYXRoJiBwYXRoKQordm9pZCBHcmFwaGljc0NvbnRleHQ6OmNhbnZhc0NsaXAoY29uc3Qg
UGF0aCYgcGF0aCwgV2luZFJ1bGUgZmlsbFJ1bGUpCiB7Ci0gICAgY2xpcChwYXRoKTsKKyAgICBj
bGlwKHBhdGgsIGZpbGxSdWxlKTsKIH0KIAogdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXBPdXQo
Y29uc3QgUGF0aCYgcGF0aCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L29wZW52Zy9HcmFwaGljc0NvbnRleHRPcGVuVkcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW52Zy9HcmFwaGljc0NvbnRleHRPcGVuVkcuY3Bw
CShyZXZpc2lvbiAxMzk3MTYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9v
cGVudmcvR3JhcGhpY3NDb250ZXh0T3BlblZHLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzc5LDcg
KzM3OSw4IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpzZXRQbGF0Zm9ybUNvbXBvc2kKICAgICBt
X2RhdGEtPnNldENvbXBvc2l0ZU9wZXJhdGlvbihvcCk7CiB9CiAKLXZvaWQgR3JhcGhpY3NDb250
ZXh0OjpjbGlwKGNvbnN0IFBhdGgmIHBhdGgpCisvLyBGSVhNRTogZG9uJ3QgaWdub3JlIHRoZSB3
aW5kaW5nIHJ1bGUuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDcw
NjQKK3ZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNvbnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxl
KQogewogICAgIGlmIChwYWludGluZ0Rpc2FibGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTM4
Nyw5ICszODgsOSBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2xpcChjb25zdCBQYXRoJiBwCiAg
ICAgbV9kYXRhLT5jbGlwUGF0aChwYXRoLCBQYWludGVyT3BlblZHOjpJbnRlcnNlY3RDbGlwLCBt
X3N0YXRlLmZpbGxSdWxlKTsKIH0KIAotdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNhbnZhc0NsaXAo
Y29uc3QgUGF0aCYgcGF0aCkKK3ZvaWQgR3JhcGhpY3NDb250ZXh0OjpjYW52YXNDbGlwKGNvbnN0
IFBhdGgmIHBhdGgsIFdpbmRSdWxlIGZpbGxSdWxlKQogewotICAgIGNsaXAocGF0aCk7CisgICAg
Y2xpcChwYXRoLCBmaWxsUnVsZSk7CiB9CiAKIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwT3V0
KGNvbnN0IFBhdGgmIHBhdGgpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9xdC9HcmFwaGljc0NvbnRleHRRdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0UXQuY3BwCShyZXZpc2lvbiAxMzk3
MTYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRl
eHRRdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEyNTEsNyArMTI1MSw4IEBAIHZvaWQgR3JhcGhp
Y3NDb250ZXh0OjpzZXRQbGF0Zm9ybUNvbXBvc2kKICAgICBtX2RhdGEtPnAoKS0+c2V0Q29tcG9z
aXRpb25Nb2RlKHRvUXRDb21wb3NpdGlvbk1vZGUob3ApKTsKIH0KIAotdm9pZCBHcmFwaGljc0Nv
bnRleHQ6OmNsaXAoY29uc3QgUGF0aCYgcGF0aCkKKy8vIEZJWE1FOiBkb24ndCBpZ25vcmUgdGhl
IHdpbmRpbmcgcnVsZS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEw
Njg3Mwordm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3QgUGF0aCYgcGF0aCwgV2luZFJ1
bGUpCiB7CiAgICAgaWYgKHBhaW50aW5nRGlzYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAt
MTI2MSw5ICsxMjYyLDkgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3QgUGF0aCYg
cAogICAgIG1fZGF0YS0+cCgpLT5zZXRDbGlwUGF0aChjbGlwUGF0aCwgUXQ6OkludGVyc2VjdENs
aXApOwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2FudmFzQ2xpcChjb25zdCBQYXRoJiBw
YXRoKQordm9pZCBHcmFwaGljc0NvbnRleHQ6OmNhbnZhc0NsaXAoY29uc3QgUGF0aCYgcGF0aCwg
V2luZFJ1bGUgZmlsbFJ1bGUpCiB7Ci0gICAgY2xpcChwYXRoKTsKKyAgICBjbGlwKHBhdGgsIGZp
bGxSdWxlKTsKIH0KIAogdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXBPdXQoY29uc3QgUGF0aCYg
cGF0aCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3NraWEvR3JhcGhp
Y3NDb250ZXh0U2tpYS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3Mvc2tpYS9HcmFwaGljc0NvbnRleHRTa2lhLmNwcAkocmV2aXNpb24gMTM5NzE2KQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc2tpYS9HcmFwaGljc0NvbnRleHRT
a2lhLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzE0LDcgKzMxNCw4IEBAIHZvaWQgR3JhcGhpY3ND
b250ZXh0OjpjbGlwKGNvbnN0IEZsb2F0UmUKICAgICBwbGF0Zm9ybUNvbnRleHQoKS0+Y2xpcFJl
Y3QocmVjdCk7CiB9CiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNvbnN0IFBhdGgmIHBh
dGgpCisvLyBGSVhNRTogZG9uJ3QgaWdub3JlIHRoZSB3aW5kaW5nIHJ1bGUuIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDY4NzIKK3ZvaWQgR3JhcGhpY3NDb250ZXh0
OjpjbGlwKGNvbnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxlKQogewogICAgIGlmIChwYWludGluZ0Rp
c2FibGVkKCkgfHwgcGF0aC5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKQEAgLTMzNyw3ICsz
MzgsOCBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2xpcFJvdW5kZWRSZWN0KGNvCiAgICAgcGxh
dGZvcm1Db250ZXh0KCktPmNsaXBSUmVjdChyLCBQbGF0Zm9ybUNvbnRleHRTa2lhOjpBbnRpQWxp
YXNlZCk7CiB9CiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0OjpjYW52YXNDbGlwKGNvbnN0IFBhdGgm
IHBhdGgpCisvLyBGSVhNRTogZG9uJ3QgaWdub3JlIHRoZSB3aW5kaW5nIHJ1bGUuIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDY4NzIKK3ZvaWQgR3JhcGhpY3NDb250
ZXh0OjpjYW52YXNDbGlwKGNvbnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxlKQogewogICAgIGlmIChw
YWludGluZ0Rpc2FibGVkKCkpCiAgICAgICAgIHJldHVybjsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3dpbmNlL0dyYXBoaWNzQ29udGV4dFdpbkNFLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW5jZS9HcmFwaGljc0Nv
bnRleHRXaW5DRS5jcHAJKHJldmlzaW9uIDEzOTcxNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3dpbmNlL0dyYXBoaWNzQ29udGV4dFdpbkNFLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTE5MiwxNCArMTE5MiwxNCBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDo6c2V0UGxhdGZv
cm1Db21wb3NpCiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAotdm9pZCBHcmFwaGljc0NvbnRl
eHQ6OmNsaXAoY29uc3QgUGF0aCYgcGF0aCkKK3ZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwKGNv
bnN0IFBhdGgmIHBhdGgsIFdpbmRSdWxlKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAK
LXZvaWQgR3JhcGhpY3NDb250ZXh0OjpjYW52YXNDbGlwKGNvbnN0IFBhdGgmIHBhdGgpCit2b2lk
IEdyYXBoaWNzQ29udGV4dDo6Y2FudmFzQ2xpcChjb25zdCBQYXRoJiBwYXRoLCBXaW5kUnVsZSBm
aWxsUnVsZSkKIHsKLSAgICBjbGlwKHBhdGgpOworICAgIGNsaXAocGF0aCwgZmlsbFJ1bGUpOwog
fQogCiB2b2lkIEdyYXBoaWNzQ29udGV4dDo6Y2xpcE91dChjb25zdCBQYXRoJikKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3d4L0dyYXBoaWNzQ29udGV4dFd4LmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93eC9HcmFwaGlj
c0NvbnRleHRXeC5jcHAJKHJldmlzaW9uIDEzOTcxNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3d4L0dyYXBoaWNzQ29udGV4dFd4LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NDY2LDcgKzQ2Niw4IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3TGluZUZvckRvY3VtZW4K
ICAgICBtX2RhdGEtPmNvbnRleHQtPkRyYXdMaW5lKG9yaWdpbi54KCksIG9yaWdpbi55KCksIG9y
aWdpbi54KCkgKyB3aWR0aCwgb3JpZ2luLnkoKSk7CiB9CiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0
OjpjbGlwKGNvbnN0IFBhdGgmIHBhdGgpIAorLy8gRklYTUU6IGRvbid0IGlnbm9yZSB0aGUgd2lu
ZGluZyBydWxlLgordm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3QgUGF0aCYgcGF0aCwg
V2luZFJ1bGUpIAogeyAKICAgICBpZiAocGFpbnRpbmdEaXNhYmxlZCgpKQogICAgICAgICByZXR1
cm47CkBAIC00NzksOSArNDgwLDkgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OmNsaXAoY29uc3Qg
UGF0aCYgcAogICAgICAgICBjbGlwUGF0aChwYXRoLCBSVUxFX05PTlpFUk8pOwogfQogCi12b2lk
IEdyYXBoaWNzQ29udGV4dDo6Y2FudmFzQ2xpcChjb25zdCBQYXRoJiBwYXRoKQordm9pZCBHcmFw
aGljc0NvbnRleHQ6OmNhbnZhc0NsaXAoY29uc3QgUGF0aCYgcGF0aCwgV2luZFJ1bGUgZmlsbFJ1
bGUpCiB7Ci0gICAgY2xpcChwYXRoKTsKKyAgICBjbGlwKHBhdGgsIGZpbGxSdWxlKTsKIH0KIAog
QWZmaW5lVHJhbnNmb3JtIEdyYXBoaWNzQ29udGV4dDo6Z2V0Q1RNKEluY2x1ZGVEZXZpY2VTY2Fs
ZSkgY29uc3QK
</data>

          </attachment>
      

    </bug>

</bugzilla>