<?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>51815</bug_id>
          
          <creation_ts>2011-01-03 04:31:12 -0800</creation_ts>
          <short_desc>[GTK] Port check and radio button painting to GtkStyleContext</short_desc>
          <delta_ts>2011-01-10 11:12:02 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</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>
          <dependson>51764</dependson>
          <blocked>50820</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>mrobinson</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>328515</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-01-03 04:31:12 -0800</bug_when>
    <thetext>This depends on bug #51764 since the patch for stock icons contains the initial GtkStyleContext port</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328519</commentid>
    <comment_count>1</comment_count>
      <attachid>77801</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-01-03 04:34:13 -0800</bug_when>
    <thetext>Created attachment 77801
Paint check and radio buttons with GtkStyleContext API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331600</commentid>
    <comment_count>2</comment_count>
      <attachid>78396</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-01-10 06:27:59 -0800</bug_when>
    <thetext>Created attachment 78396
Updated patch using adjustRepaintRect()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331601</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-01-10 06:30:24 -0800</bug_when>
    <thetext>Attachment 78396 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/platform/gtk/RenderThemeGtk3.cpp&apos;]&quot; exit_code: 1
Source/WebCore/platform/gtk/RenderThemeGtk3.cpp:123:  Use 0 instead of NULL.  [readability/null] [5]
Source/WebCore/platform/gtk/RenderThemeGtk3.cpp:197:  Use 0 instead of NULL.  [readability/null] [5]
Source/WebCore/platform/gtk/RenderThemeGtk3.cpp:218:  Use 0 instead of NULL.  [readability/null] [5]
Total errors found: 3 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331642</commentid>
    <comment_count>4</comment_count>
      <attachid>78396</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-01-10 08:52:20 -0800</bug_when>
    <thetext>Comment on attachment 78396
Updated patch using adjustRepaintRect()

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

&gt; Source/WebCore/platform/gtk/RenderThemeGtk3.cpp:220
&gt; +    IntRect indicatorRect(rect.x(), rect.y() + ((rect.height() - indicatorSize) / 2), indicatorSize, indicatorSize);

It seems like ((rect.height() - indicatorSize) / 2) is dead code, so it should probably be removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331659</commentid>
    <comment_count>5</comment_count>
      <attachid>78403</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-01-10 09:33:30 -0800</bug_when>
    <thetext>Created attachment 78403
Update patch according to review

You are right that code is indeed useless. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331663</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-01-10 09:36:44 -0800</bug_when>
    <thetext>Attachment 78403 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/platform/gtk/RenderThemeGtk3.cpp&apos;]&quot; exit_code: 1
Source/WebCore/platform/gtk/RenderThemeGtk3.cpp:124:  Use 0 instead of NULL.  [readability/null] [5]
Source/WebCore/platform/gtk/RenderThemeGtk3.cpp:204:  Use 0 instead of NULL.  [readability/null] [5]
Source/WebCore/platform/gtk/RenderThemeGtk3.cpp:225:  Use 0 instead of NULL.  [readability/null] [5]
Total errors found: 3 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331665</commentid>
    <comment_count>7</comment_count>
      <attachid>78403</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-01-10 09:47:26 -0800</bug_when>
    <thetext>Comment on attachment 78403
Update patch according to review

\m/ One more to go.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331720</commentid>
    <comment_count>8</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-01-10 11:10:37 -0800</bug_when>
    <thetext>Committed r75391: &lt;http://trac.webkit.org/changeset/75391&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>77801</attachid>
            <date>2011-01-03 04:34:13 -0800</date>
            <delta_ts>2011-01-10 06:27:59 -0800</delta_ts>
            <desc>Paint check and radio buttons with GtkStyleContext API</desc>
            <filename>style-context-toggle.diff</filename>
            <type>text/plain</type>
            <size>6022</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MWUxZWQ1OC4uMDBiNzI1NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxMS0wMS0wMyAgQ2FybG9zIEdhcmNp
YSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgW0dUS10gUG9ydCBjaGVjayBhbmQgcmFkaW8gYnV0dG9u
IHBhaW50aW5nIHRvIEd0a1N0eWxlQ29udGV4dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTE4MTUKKworICAgICAgICBVc2UgR3RrU3R5bGVDb250ZXh0
IEFQSSB0byBwYWludCBjaGVjayBhbmQgcmFkaW8gYnV0dG9ucyB3aGVuCisgICAgICAgIGJ1aWxk
aW5nIHdpdGggR1RLKyAzLnguCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLiBUaGlzIHNob3VsZCBu
b3QgY2hhbmdlIGZ1bmN0aW9uYWxpdHkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvUmVuZGVy
VGhlbWVHdGszLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnNldFRvZ2dsZVNpemUpOgorICAgICAg
ICAoV2ViQ29yZTo6cGFpbnRUb2dnbGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVH
dGs6OnNldENoZWNrYm94U2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZUd0azo6
cGFpbnRDaGVja2JveCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZUd0azo6c2V0UmFk
aW9TaXplKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lR3RrOjpwYWludFJhZGlvKToK
KwogMjAxMS0wMS0wMiAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgogCiAgICAgICAg
IFJ1YmJlci1zdGFtcGVkIGJ5IFNpbW9uIEZyYXNlci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrMy5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5k
ZXJUaGVtZUd0azMuY3BwCmluZGV4IDk4ZTMwMTMuLjQ4NTRmNTkgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrMy5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvUmVuZGVyVGhlbWVHdGszLmNwcApAQCAtMTQxLDE1ICsxNDEsMTcgQEAgYm9vbCBSZW5k
ZXJUaGVtZUd0azo6cGFpbnRSZW5kZXJPYmplY3QoR3RrVGhlbWVXaWRnZXRUeXBlIHR5cGUsIFJl
bmRlck9iamVjdCogcmUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGd0a1RleHREaXJlY3Rpb24ocmVuZGVyT2JqZWN0LT5zdHlsZSgpLT5kaXJlY3Rpb24oKSkp
OwogfQogCi1zdGF0aWMgdm9pZCBzZXRUb2dnbGVTaXplKGNvbnN0IFJlbmRlclRoZW1lR3RrKiB0
aGVtZSwgUmVuZGVyU3R5bGUqIHN0eWxlLCBDb250cm9sUGFydCBhcHBlYXJhbmNlKQorc3RhdGlj
IHZvaWQgc2V0VG9nZ2xlU2l6ZShHdGtTdHlsZUNvbnRleHQqIGNvbnRleHQsIFJlbmRlclN0eWxl
KiBzdHlsZSkKIHsKICAgICAvLyBUaGUgd2lkdGggYW5kIGhlaWdodCBhcmUgYm90aCBzcGVjaWZp
ZWQsIHNvIHdlIHNob3VsZG4ndCBjaGFuZ2UgdGhlbS4KICAgICBpZiAoIXN0eWxlLT53aWR0aCgp
LmlzSW50cmluc2ljT3JBdXRvKCkgJiYgIXN0eWxlLT5oZWlnaHQoKS5pc0F1dG8oKSkKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgLy8gRklYTUU6IFRoaXMgaXMgcHJvYmFibHkgbm90IGNvcnJlY3Qg
dXNlIG9mIGluZGljYXRvclNpemUgYW5kIGluZGljYXRvclNwYWNpbmcuCi0gICAgZ2ludCBpbmRp
Y2F0b3JTaXplLCBpbmRpY2F0b3JTcGFjaW5nOwotICAgIHRoZW1lLT5nZXRJbmRpY2F0b3JNZXRy
aWNzKGFwcGVhcmFuY2UsIGluZGljYXRvclNpemUsIGluZGljYXRvclNwYWNpbmcpOworICAgIGdp
bnQgaW5kaWNhdG9yU2l6ZSA9IDAsIGluZGljYXRvclNwYWNpbmcgPSAwOworICAgIGd0a19zdHls
ZV9jb250ZXh0X2dldF9zdHlsZShjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAiaW5kaWNhdG9yLXNpemUiLCAmaW5kaWNhdG9yU2l6ZSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgImluZGljYXRvci1zcGFjaW5nIiwgJmluZGljYXRvclNwYWNpbmcsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOwogCiAgICAgLy8gT3RoZXIgcG9ydHMg
aGFyZC1jb2RlIHRoaXMgdG8gMTMsIGJ1dCBHVEsrIHVzZXJzIHRlbmQgdG8gZGVtYW5kIHRoZSBu
YXRpdmUgbG9vay4KICAgICAvLyBJdCBjb3VsZCBiZSBtYWRlIGEgY29uZmlndXJhdGlvbiBvcHRp
b24gdmFsdWVzIG90aGVyIHRoYW4gMTMgYWN0dWFsbHkgYnJlYWsgc2l0ZSBjb21wYXRpYmlsaXR5
LgpAQCAtMTYxLDI0ICsxNjMsNjkgQEAgc3RhdGljIHZvaWQgc2V0VG9nZ2xlU2l6ZShjb25zdCBS
ZW5kZXJUaGVtZUd0ayogdGhlbWUsIFJlbmRlclN0eWxlKiBzdHlsZSwgQ29udHIKICAgICAgICAg
c3R5bGUtPnNldEhlaWdodChMZW5ndGgobGVuZ3RoLCBGaXhlZCkpOwogfQogCitzdGF0aWMgdm9p
ZCBwYWludFRvZ2dsZShjb25zdCBSZW5kZXJUaGVtZUd0ayogdGhlbWUsIEdUeXBlIHdpZGdldFR5
cGUsIFJlbmRlck9iamVjdCogcmVuZGVyT2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5m
bywgY29uc3QgSW50UmVjdCYgcmVjdCkKK3sKKyAgICBHdGtTdHlsZUNvbnRleHQqIGNvbnRleHQg
PSBnZXRTdHlsZUNvbnRleHQod2lkZ2V0VHlwZSk7CisgICAgZ3RrX3N0eWxlX2NvbnRleHRfc2F2
ZShjb250ZXh0KTsKKworICAgIGd0a19zdHlsZV9jb250ZXh0X3NldF9kaXJlY3Rpb24oY29udGV4
dCwgc3RhdGljX2Nhc3Q8R3RrVGV4dERpcmVjdGlvbj4oZ3RrVGV4dERpcmVjdGlvbihyZW5kZXJP
YmplY3QtPnN0eWxlKCktPmRpcmVjdGlvbigpKSkpOworICAgIGd0a19zdHlsZV9jb250ZXh0X2Fk
ZF9jbGFzcyhjb250ZXh0LCB3aWRnZXRUeXBlID09IEdUS19UWVBFX0NIRUNLX0JVVFRPTiA/IEdU
S19TVFlMRV9DTEFTU19DSEVDSyA6IEdUS19TVFlMRV9DTEFTU19SQURJTyk7CisKKyAgICBnaW50
IGluZGljYXRvclNpemUgPSAwLCBpbmRpY2F0b3JTcGFjaW5nID0gMDsKKyAgICBndGtfc3R5bGVf
Y29udGV4dF9nZXRfc3R5bGUoY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgImluZGljYXRvci1zaXplIiwgJmluZGljYXRvclNpemUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICJpbmRpY2F0b3Itc3BhY2luZyIsICZpbmRpY2F0b3JTcGFjaW5nLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsKKyAgICBJbnRSZWN0IGluZGljYXRvclJl
Y3QocmVjdC54KCksIHJlY3QueSgpICsgKHJlY3QuaGVpZ2h0KCkgLSBpbmRpY2F0b3JTaXplKSwg
aW5kaWNhdG9yU2l6ZSwgaW5kaWNhdG9yU2l6ZSk7CisKKyAgICBndWludCBmbGFncyA9IDA7Cisg
ICAgaWYgKHRoZW1lLT5pc0NoZWNrZWQocmVuZGVyT2JqZWN0KSkKKyAgICAgICAgZmxhZ3MgfD0g
R1RLX1NUQVRFX0ZMQUdfQUNUSVZFOworICAgIGlmICh0aGVtZS0+aXNQcmVzc2VkKHJlbmRlck9i
amVjdCkpCisgICAgICAgIGZsYWdzIHw9IEdUS19TVEFURV9GTEFHX1NFTEVDVEVEOworICAgIGlm
ICghdGhlbWUtPmlzRW5hYmxlZChyZW5kZXJPYmplY3QpIHx8IHRoZW1lLT5pc1JlYWRPbmx5Q29u
dHJvbChyZW5kZXJPYmplY3QpKQorICAgICAgICBmbGFncyB8PSBHVEtfU1RBVEVfRkxBR19JTlNF
TlNJVElWRTsKKyAgICBlbHNlIGlmICh0aGVtZS0+aXNIb3ZlcmVkKHJlbmRlck9iamVjdCkpCisg
ICAgICAgIGZsYWdzIHw9IEdUS19TVEFURV9GTEFHX1BSRUxJR0hUOworICAgIGd0a19zdHlsZV9j
b250ZXh0X3NldF9zdGF0ZShjb250ZXh0LCBzdGF0aWNfY2FzdDxHdGtTdGF0ZUZsYWdzPihmbGFn
cykpOworCisgICAgaWYgKHdpZGdldFR5cGUgPT0gR1RLX1RZUEVfQ0hFQ0tfQlVUVE9OKSB7Cisg
ICAgICAgIGd0a19yZW5kZXJfY2hlY2soY29udGV4dCwgcGFpbnRJbmZvLmNvbnRleHQtPnBsYXRm
b3JtQ29udGV4dCgpLCBpbmRpY2F0b3JSZWN0LngoKSwgaW5kaWNhdG9yUmVjdC55KCksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgaW5kaWNhdG9yUmVjdC53aWR0aCgpLCBpbmRpY2F0b3JSZWN0
LmhlaWdodCgpKTsKKyAgICB9IGVsc2UgeworICAgICAgICBndGtfcmVuZGVyX29wdGlvbihjb250
ZXh0LCBwYWludEluZm8uY29udGV4dC0+cGxhdGZvcm1Db250ZXh0KCksIGluZGljYXRvclJlY3Qu
eCgpLCBpbmRpY2F0b3JSZWN0LnkoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kaWNh
dG9yUmVjdC53aWR0aCgpLCBpbmRpY2F0b3JSZWN0LmhlaWdodCgpKTsKKyAgICB9CisKKyAgICBp
ZiAodGhlbWUtPmlzRm9jdXNlZChyZW5kZXJPYmplY3QpKSB7CisgICAgICAgIGluZGljYXRvclJl
Y3QuaW5mbGF0ZShpbmRpY2F0b3JTcGFjaW5nKTsKKyAgICAgICAgZ3RrX3JlbmRlcl9mb2N1cyhj
b250ZXh0LCBwYWludEluZm8uY29udGV4dC0+cGxhdGZvcm1Db250ZXh0KCksIGluZGljYXRvclJl
Y3QueCgpLCBpbmRpY2F0b3JSZWN0LnkoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBpbmRp
Y2F0b3JSZWN0LndpZHRoKCksIGluZGljYXRvclJlY3QuaGVpZ2h0KCkpOworICAgIH0KKworICAg
IGd0a19zdHlsZV9jb250ZXh0X3Jlc3RvcmUoY29udGV4dCk7Cit9CisKIHZvaWQgUmVuZGVyVGhl
bWVHdGs6OnNldENoZWNrYm94U2l6ZShSZW5kZXJTdHlsZSogc3R5bGUpIGNvbnN0CiB7Ci0gICAg
c2V0VG9nZ2xlU2l6ZSh0aGlzLCBzdHlsZSwgUmFkaW9QYXJ0KTsKKyAgICBzZXRUb2dnbGVTaXpl
KGdldFN0eWxlQ29udGV4dChHVEtfVFlQRV9DSEVDS19CVVRUT04pLCBzdHlsZSk7CiB9CiAKLWJv
b2wgUmVuZGVyVGhlbWVHdGs6OnBhaW50Q2hlY2tib3goUmVuZGVyT2JqZWN0KiBvYmplY3QsIGNv
bnN0IFBhaW50SW5mbyYgaW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkKK2Jvb2wgUmVuZGVyVGhl
bWVHdGs6OnBhaW50Q2hlY2tib3goUmVuZGVyT2JqZWN0KiByZW5kZXJPYmplY3QsIGNvbnN0IFBh
aW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBJbnRSZWN0JiByZWN0KQogewotICAgIHJldHVybiBw
YWludFJlbmRlck9iamVjdChNT1pfR1RLX0NIRUNLQlVUVE9OLCBvYmplY3QsIGluZm8uY29udGV4
dCwgcmVjdCwgaXNDaGVja2VkKG9iamVjdCkpOworICAgIHBhaW50VG9nZ2xlKHRoaXMsIEdUS19U
WVBFX0NIRUNLX0JVVFRPTiwgcmVuZGVyT2JqZWN0LCBwYWludEluZm8sIHJlY3QpOworICAgIHJl
dHVybiBmYWxzZTsKIH0KIAogdm9pZCBSZW5kZXJUaGVtZUd0azo6c2V0UmFkaW9TaXplKFJlbmRl
clN0eWxlKiBzdHlsZSkgY29uc3QKIHsKLSAgICBzZXRUb2dnbGVTaXplKHRoaXMsIHN0eWxlLCBS
YWRpb1BhcnQpOworICAgIHNldFRvZ2dsZVNpemUoZ2V0U3R5bGVDb250ZXh0KEdUS19UWVBFX1JB
RElPX0JVVFRPTiksIHN0eWxlKTsKIH0KIAotYm9vbCBSZW5kZXJUaGVtZUd0azo6cGFpbnRSYWRp
byhSZW5kZXJPYmplY3QqIG9iamVjdCwgY29uc3QgUGFpbnRJbmZvJiBpbmZvLCBjb25zdCBJbnRS
ZWN0JiByZWN0KQorYm9vbCBSZW5kZXJUaGVtZUd0azo6cGFpbnRSYWRpbyhSZW5kZXJPYmplY3Qq
IHJlbmRlck9iamVjdCwgY29uc3QgUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IEludFJlY3Qm
IHJlY3QpCiB7Ci0gICAgcmV0dXJuIHBhaW50UmVuZGVyT2JqZWN0KE1PWl9HVEtfUkFESU9CVVRU
T04sIG9iamVjdCwgaW5mby5jb250ZXh0LCByZWN0LCBpc0NoZWNrZWQob2JqZWN0KSk7CisgICAg
cGFpbnRUb2dnbGUodGhpcywgR1RLX1RZUEVfUkFESU9fQlVUVE9OLCByZW5kZXJPYmplY3QsIHBh
aW50SW5mbywgcmVjdCk7CisgICAgcmV0dXJuIGZhbHNlOwogfQogCiBib29sIFJlbmRlclRoZW1l
R3RrOjpwYWludEJ1dHRvbihSZW5kZXJPYmplY3QqIHJlbmRlck9iamVjdCwgY29uc3QgUGFpbnRJ
bmZvJiBwYWludEluZm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78396</attachid>
            <date>2011-01-10 06:27:59 -0800</date>
            <delta_ts>2011-01-10 09:33:30 -0800</delta_ts>
            <desc>Updated patch using adjustRepaintRect()</desc>
            <filename>style-context-checkradio2.diff</filename>
            <type>text/plain</type>
            <size>7041</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAzYWYyNDJlLi5lZmY5ZTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQg
QEAKKzIwMTEtMDEtMTAgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtHVEtd
IFBvcnQgY2hlY2sgYW5kIHJhZGlvIGJ1dHRvbiBwYWludGluZyB0byBHdGtTdHlsZUNvbnRleHQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUxODE1CisK
KyAgICAgICAgVXNlIEd0a1N0eWxlQ29udGV4dCBBUEkgdG8gcGFpbnQgY2hlY2sgYW5kIHJhZGlv
IGJ1dHRvbnMgd2hlbgorICAgICAgICBidWlsZGluZyB3aXRoIEdUSysgMy54LgorCisgICAgICAg
IE5vIG5ldyB0ZXN0cy4gVGhpcyBzaG91bGQgbm90IGNoYW5nZSBmdW5jdGlvbmFsaXR5LgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrMy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJUaGVtZUd0azo6YWRqdXN0UmVwYWludFJlY3QpOgorICAgICAgICAoV2ViQ29y
ZTo6c2V0VG9nZ2xlU2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjpwYWludFRvZ2dsZSk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZUd0azo6c2V0Q2hlY2tib3hTaXplKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclRoZW1lR3RrOjpwYWludENoZWNrYm94KToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclRoZW1lR3RrOjpzZXRSYWRpb1NpemUpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyVGhlbWVHdGs6OnBhaW50UmFkaW8pOgorCiAyMDExLTAxLTEwICBKb2huIEtub3R0ZW5iZWx0
ICA8amtub3R0ZW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEplcmVteSBP
cmxvdy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVt
ZUd0azMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrMy5j
cHAKaW5kZXggMGUzMDExZi4uMDhjZjU0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrMy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL1JlbmRlclRoZW1lR3RrMy5jcHAKQEAgLTExNSw2ICsxMTUsMTUgQEAgdm9pZCBSZW5k
ZXJUaGVtZUd0azo6YWRqdXN0UmVwYWludFJlY3QoY29uc3QgUmVuZGVyT2JqZWN0KiByZW5kZXJP
YmplY3QsIEludFJlY3QKICAgICBHdGtTdHlsZUNvbnRleHQqIGNvbnRleHQgPSAwOwogICAgIENv
bnRyb2xQYXJ0IHBhcnQgPSByZW5kZXJPYmplY3QtPnN0eWxlKCktPmFwcGVhcmFuY2UoKTsKICAg
ICBzd2l0Y2ggKHBhcnQpIHsKKyAgICBjYXNlIENoZWNrYm94UGFydDoKKyAgICBjYXNlIFJhZGlv
UGFydDoKKyAgICAgICAgY29udGV4dCA9IGdldFN0eWxlQ29udGV4dChwYXJ0ID09IENoZWNrYm94
UGFydCA/IEdUS19UWVBFX0NIRUNLX0JVVFRPTiA6IEdUS19UWVBFX1JBRElPX0JVVFRPTik7CisK
KyAgICAgICAgZ2ludCBpbmRpY2F0b3JTcGFjaW5nOworICAgICAgICBndGtfc3R5bGVfY29udGV4
dF9nZXRfc3R5bGUoY29udGV4dCwgImluZGljYXRvci1zcGFjaW5nIiwgJmluZGljYXRvclNwYWNp
bmcsIE5VTEwpOworICAgICAgICByZWN0LmluZmxhdGUoaW5kaWNhdG9yU3BhY2luZyk7CisKKyAg
ICAgICAgcmV0dXJuOwogICAgIGNhc2UgU2xpZGVyVmVydGljYWxQYXJ0OgogICAgIGNhc2UgU2xp
ZGVySG9yaXpvbnRhbFBhcnQ6CiAgICAgICAgIGNvbnRleHQgPSBnZXRTdHlsZUNvbnRleHQocGFy
dCA9PSBTbGlkZXJUaHVtYkhvcml6b250YWxQYXJ0ID8gIEdUS19UWVBFX0hTQ0FMRSA6IEdUS19U
WVBFX1ZTQ0FMRSk7CkBAIC0xNzUsNDQgKzE4NCw4OSBAQCBib29sIFJlbmRlclRoZW1lR3RrOjpw
YWludFJlbmRlck9iamVjdChHdGtUaGVtZVdpZGdldFR5cGUgdHlwZSwgUmVuZGVyT2JqZWN0KiBy
ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3RrVGV4dERp
cmVjdGlvbihyZW5kZXJPYmplY3QtPnN0eWxlKCktPmRpcmVjdGlvbigpKSk7CiB9CiAKLXN0YXRp
YyB2b2lkIHNldFRvZ2dsZVNpemUoY29uc3QgUmVuZGVyVGhlbWVHdGsqIHRoZW1lLCBSZW5kZXJT
dHlsZSogc3R5bGUsIENvbnRyb2xQYXJ0IGFwcGVhcmFuY2UpCitzdGF0aWMgdm9pZCBzZXRUb2dn
bGVTaXplKEd0a1N0eWxlQ29udGV4dCogY29udGV4dCwgUmVuZGVyU3R5bGUqIHN0eWxlKQogewog
ICAgIC8vIFRoZSB3aWR0aCBhbmQgaGVpZ2h0IGFyZSBib3RoIHNwZWNpZmllZCwgc28gd2Ugc2hv
dWxkbid0IGNoYW5nZSB0aGVtLgogICAgIGlmICghc3R5bGUtPndpZHRoKCkuaXNJbnRyaW5zaWNP
ckF1dG8oKSAmJiAhc3R5bGUtPmhlaWdodCgpLmlzQXV0bygpKQogICAgICAgICByZXR1cm47CiAK
LSAgICAvLyBGSVhNRTogVGhpcyBpcyBwcm9iYWJseSBub3QgY29ycmVjdCB1c2Ugb2YgaW5kaWNh
dG9yU2l6ZSBhbmQgaW5kaWNhdG9yU3BhY2luZy4KLSAgICBnaW50IGluZGljYXRvclNpemUsIGlu
ZGljYXRvclNwYWNpbmc7Ci0gICAgdGhlbWUtPmdldEluZGljYXRvck1ldHJpY3MoYXBwZWFyYW5j
ZSwgaW5kaWNhdG9yU2l6ZSwgaW5kaWNhdG9yU3BhY2luZyk7Ci0KLSAgICAvLyBPdGhlciBwb3J0
cyBoYXJkLWNvZGUgdGhpcyB0byAxMywgYnV0IEdUSysgdXNlcnMgdGVuZCB0byBkZW1hbmQgdGhl
IG5hdGl2ZSBsb29rLgorICAgIC8vIE90aGVyIHBvcnRzIGhhcmQtY29kZSB0aGlzIHRvIDEzIHdo
aWNoIGlzIGFsc28gdGhlIGRlZmF1bHQgdmFsdWUgZGVmaW5lZCBieSBHVEsrLgorICAgIC8vIEdU
SysgdXNlcnMgdGVuZCB0byBkZW1hbmQgdGhlIG5hdGl2ZSBsb29rLgogICAgIC8vIEl0IGNvdWxk
IGJlIG1hZGUgYSBjb25maWd1cmF0aW9uIG9wdGlvbiB2YWx1ZXMgb3RoZXIgdGhhbiAxMyBhY3R1
YWxseSBicmVhayBzaXRlIGNvbXBhdGliaWxpdHkuCi0gICAgaW50IGxlbmd0aCA9IGluZGljYXRv
clNpemUgKyBpbmRpY2F0b3JTcGFjaW5nOworICAgIGdpbnQgaW5kaWNhdG9yU2l6ZTsKKyAgICBn
dGtfc3R5bGVfY29udGV4dF9nZXRfc3R5bGUoY29udGV4dCwgImluZGljYXRvci1zaXplIiwgJmlu
ZGljYXRvclNpemUsIE5VTEwpOworCiAgICAgaWYgKHN0eWxlLT53aWR0aCgpLmlzSW50cmluc2lj
T3JBdXRvKCkpCi0gICAgICAgIHN0eWxlLT5zZXRXaWR0aChMZW5ndGgobGVuZ3RoLCBGaXhlZCkp
OworICAgICAgICBzdHlsZS0+c2V0V2lkdGgoTGVuZ3RoKGluZGljYXRvclNpemUsIEZpeGVkKSk7
CiAKICAgICBpZiAoc3R5bGUtPmhlaWdodCgpLmlzQXV0bygpKQotICAgICAgICBzdHlsZS0+c2V0
SGVpZ2h0KExlbmd0aChsZW5ndGgsIEZpeGVkKSk7CisgICAgICAgIHN0eWxlLT5zZXRIZWlnaHQo
TGVuZ3RoKGluZGljYXRvclNpemUsIEZpeGVkKSk7Cit9CisKK3N0YXRpYyB2b2lkIHBhaW50VG9n
Z2xlKGNvbnN0IFJlbmRlclRoZW1lR3RrKiB0aGVtZSwgR1R5cGUgd2lkZ2V0VHlwZSwgUmVuZGVy
T2JqZWN0KiByZW5kZXJPYmplY3QsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBJ
bnRSZWN0JiByZWN0KQoreworICAgIEd0a1N0eWxlQ29udGV4dCogY29udGV4dCA9IGdldFN0eWxl
Q29udGV4dCh3aWRnZXRUeXBlKTsKKyAgICBndGtfc3R5bGVfY29udGV4dF9zYXZlKGNvbnRleHQp
OworCisgICAgZ3RrX3N0eWxlX2NvbnRleHRfc2V0X2RpcmVjdGlvbihjb250ZXh0LCBzdGF0aWNf
Y2FzdDxHdGtUZXh0RGlyZWN0aW9uPihndGtUZXh0RGlyZWN0aW9uKHJlbmRlck9iamVjdC0+c3R5
bGUoKS0+ZGlyZWN0aW9uKCkpKSk7CisgICAgZ3RrX3N0eWxlX2NvbnRleHRfYWRkX2NsYXNzKGNv
bnRleHQsIHdpZGdldFR5cGUgPT0gR1RLX1RZUEVfQ0hFQ0tfQlVUVE9OID8gR1RLX1NUWUxFX0NM
QVNTX0NIRUNLIDogR1RLX1NUWUxFX0NMQVNTX1JBRElPKTsKKworICAgIGdpbnQgaW5kaWNhdG9y
U2l6ZSwgaW5kaWNhdG9yU3BhY2luZzsKKyAgICBndGtfc3R5bGVfY29udGV4dF9nZXRfc3R5bGUo
Y29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImluZGljYXRvci1zaXpl
IiwgJmluZGljYXRvclNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbmRp
Y2F0b3Itc3BhY2luZyIsICZpbmRpY2F0b3JTcGFjaW5nLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBOVUxMKTsKKworICAgIEludFJlY3QgaW5kaWNhdG9yUmVjdChyZWN0LngoKSwg
cmVjdC55KCkgKyAoKHJlY3QuaGVpZ2h0KCkgLSBpbmRpY2F0b3JTaXplKSAvIDIpLCBpbmRpY2F0
b3JTaXplLCBpbmRpY2F0b3JTaXplKTsKKworICAgIGd1aW50IGZsYWdzID0gMDsKKyAgICBpZiAo
IXRoZW1lLT5pc0VuYWJsZWQocmVuZGVyT2JqZWN0KSB8fCB0aGVtZS0+aXNSZWFkT25seUNvbnRy
b2wocmVuZGVyT2JqZWN0KSkKKyAgICAgICAgZmxhZ3MgfD0gR1RLX1NUQVRFX0ZMQUdfSU5TRU5T
SVRJVkU7CisgICAgZWxzZSBpZiAodGhlbWUtPmlzSG92ZXJlZChyZW5kZXJPYmplY3QpKQorICAg
ICAgICBmbGFncyB8PSBHVEtfU1RBVEVfRkxBR19QUkVMSUdIVDsKKyAgICBpZiAodGhlbWUtPmlz
Q2hlY2tlZChyZW5kZXJPYmplY3QpKQorICAgICAgICBmbGFncyB8PSBHVEtfU1RBVEVfRkxBR19B
Q1RJVkU7CisgICAgaWYgKHRoZW1lLT5pc1ByZXNzZWQocmVuZGVyT2JqZWN0KSkKKyAgICAgICAg
ZmxhZ3MgfD0gR1RLX1NUQVRFX0ZMQUdfU0VMRUNURUQ7CisgICAgZ3RrX3N0eWxlX2NvbnRleHRf
c2V0X3N0YXRlKGNvbnRleHQsIHN0YXRpY19jYXN0PEd0a1N0YXRlRmxhZ3M+KGZsYWdzKSk7CisK
KyAgICBpZiAod2lkZ2V0VHlwZSA9PSBHVEtfVFlQRV9DSEVDS19CVVRUT04pIHsKKyAgICAgICAg
Z3RrX3JlbmRlcl9jaGVjayhjb250ZXh0LCBwYWludEluZm8uY29udGV4dC0+cGxhdGZvcm1Db250
ZXh0KCksIGluZGljYXRvclJlY3QueCgpLCBpbmRpY2F0b3JSZWN0LnkoKSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICBpbmRpY2F0b3JSZWN0LndpZHRoKCksIGluZGljYXRvclJlY3QuaGVpZ2h0
KCkpOworICAgIH0gZWxzZSB7CisgICAgICAgIGd0a19yZW5kZXJfb3B0aW9uKGNvbnRleHQsIHBh
aW50SW5mby5jb250ZXh0LT5wbGF0Zm9ybUNvbnRleHQoKSwgaW5kaWNhdG9yUmVjdC54KCksIGlu
ZGljYXRvclJlY3QueSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRpY2F0b3JSZWN0
LndpZHRoKCksIGluZGljYXRvclJlY3QuaGVpZ2h0KCkpOworICAgIH0KKworICAgIGlmICh0aGVt
ZS0+aXNGb2N1c2VkKHJlbmRlck9iamVjdCkpIHsKKyAgICAgICAgaW5kaWNhdG9yUmVjdC5pbmZs
YXRlKGluZGljYXRvclNwYWNpbmcpOworICAgICAgICBndGtfcmVuZGVyX2ZvY3VzKGNvbnRleHQs
IHBhaW50SW5mby5jb250ZXh0LT5wbGF0Zm9ybUNvbnRleHQoKSwgaW5kaWNhdG9yUmVjdC54KCks
IGluZGljYXRvclJlY3QueSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGluZGljYXRvclJl
Y3Qud2lkdGgoKSwgaW5kaWNhdG9yUmVjdC5oZWlnaHQoKSk7CisgICAgfQorCisgICAgZ3RrX3N0
eWxlX2NvbnRleHRfcmVzdG9yZShjb250ZXh0KTsKIH0KIAogdm9pZCBSZW5kZXJUaGVtZUd0azo6
c2V0Q2hlY2tib3hTaXplKFJlbmRlclN0eWxlKiBzdHlsZSkgY29uc3QKIHsKLSAgICBzZXRUb2dn
bGVTaXplKHRoaXMsIHN0eWxlLCBSYWRpb1BhcnQpOworICAgIHNldFRvZ2dsZVNpemUoZ2V0U3R5
bGVDb250ZXh0KEdUS19UWVBFX0NIRUNLX0JVVFRPTiksIHN0eWxlKTsKIH0KIAotYm9vbCBSZW5k
ZXJUaGVtZUd0azo6cGFpbnRDaGVja2JveChSZW5kZXJPYmplY3QqIG9iamVjdCwgY29uc3QgUGFp
bnRJbmZvJiBpbmZvLCBjb25zdCBJbnRSZWN0JiByZWN0KQorYm9vbCBSZW5kZXJUaGVtZUd0azo6
cGFpbnRDaGVja2JveChSZW5kZXJPYmplY3QqIHJlbmRlck9iamVjdCwgY29uc3QgUGFpbnRJbmZv
JiBwYWludEluZm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCiB7Ci0gICAgcmV0dXJuIHBhaW50UmVu
ZGVyT2JqZWN0KE1PWl9HVEtfQ0hFQ0tCVVRUT04sIG9iamVjdCwgaW5mby5jb250ZXh0LCByZWN0
LCBpc0NoZWNrZWQob2JqZWN0KSk7CisgICAgcGFpbnRUb2dnbGUodGhpcywgR1RLX1RZUEVfQ0hF
Q0tfQlVUVE9OLCByZW5kZXJPYmplY3QsIHBhaW50SW5mbywgcmVjdCk7CisgICAgcmV0dXJuIGZh
bHNlOwogfQogCiB2b2lkIFJlbmRlclRoZW1lR3RrOjpzZXRSYWRpb1NpemUoUmVuZGVyU3R5bGUq
IHN0eWxlKSBjb25zdAogewotICAgIHNldFRvZ2dsZVNpemUodGhpcywgc3R5bGUsIFJhZGlvUGFy
dCk7CisgICAgc2V0VG9nZ2xlU2l6ZShnZXRTdHlsZUNvbnRleHQoR1RLX1RZUEVfUkFESU9fQlVU
VE9OKSwgc3R5bGUpOwogfQogCi1ib29sIFJlbmRlclRoZW1lR3RrOjpwYWludFJhZGlvKFJlbmRl
ck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIGluZm8sIGNvbnN0IEludFJlY3QmIHJl
Y3QpCitib29sIFJlbmRlclRoZW1lR3RrOjpwYWludFJhZGlvKFJlbmRlck9iamVjdCogcmVuZGVy
T2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkK
IHsKLSAgICByZXR1cm4gcGFpbnRSZW5kZXJPYmplY3QoTU9aX0dUS19SQURJT0JVVFRPTiwgb2Jq
ZWN0LCBpbmZvLmNvbnRleHQsIHJlY3QsIGlzQ2hlY2tlZChvYmplY3QpKTsKKyAgICBwYWludFRv
Z2dsZSh0aGlzLCBHVEtfVFlQRV9SQURJT19CVVRUT04sIHJlbmRlck9iamVjdCwgcGFpbnRJbmZv
LCByZWN0KTsKKyAgICByZXR1cm4gZmFsc2U7CiB9CiAKIGJvb2wgUmVuZGVyVGhlbWVHdGs6OnBh
aW50QnV0dG9uKFJlbmRlck9iamVjdCogcmVuZGVyT2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBh
aW50SW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkK
</data>
<flag name="review"
          id="69704"
          type_id="1"
          status="-"
          setter="mrobinson"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78403</attachid>
            <date>2011-01-10 09:33:30 -0800</date>
            <delta_ts>2011-01-10 11:12:02 -0800</delta_ts>
            <desc>Update patch according to review</desc>
            <filename>style-context-checkradio3.diff</filename>
            <type>text/plain</type>
            <size>6933</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhMWNkNWU3Li4zZGI5ZGZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjYg
QEAKIDIwMTEtMDEtMTAgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgogCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtHVEtd
IFBvcnQgY2hlY2sgYW5kIHJhZGlvIGJ1dHRvbiBwYWludGluZyB0byBHdGtTdHlsZUNvbnRleHQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUxODE1CisK
KyAgICAgICAgVXNlIEd0a1N0eWxlQ29udGV4dCBBUEkgdG8gcGFpbnQgY2hlY2sgYW5kIHJhZGlv
IGJ1dHRvbnMgd2hlbgorICAgICAgICBidWlsZGluZyB3aXRoIEdUSysgMy54LgorCisgICAgICAg
IE5vIG5ldyB0ZXN0cy4gVGhpcyBzaG91bGQgbm90IGNoYW5nZSBmdW5jdGlvbmFsaXR5LgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrMy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJUaGVtZUd0azo6YWRqdXN0UmVwYWludFJlY3QpOgorICAgICAgICAoV2ViQ29y
ZTo6c2V0VG9nZ2xlU2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjpwYWludFRvZ2dsZSk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZUd0azo6c2V0Q2hlY2tib3hTaXplKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclRoZW1lR3RrOjpwYWludENoZWNrYm94KToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclRoZW1lR3RrOjpzZXRSYWRpb1NpemUpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyVGhlbWVHdGs6OnBhaW50UmFkaW8pOgorCisyMDExLTAxLTEwICBDYXJsb3MgR2FyY2lhIENh
bXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKwogICAgICAgICBSZXZpZXdlZCBieSBNYXJ0aW4g
Um9iaW5zb24uCiAKICAgICAgICAgW0dUS10gUG9ydCB0ZXh0IGlucHV0IGNvbnRyb2wgcGFpbnRp
bmcgdG8gR3RrU3R5bGVDb250ZXh0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvUmVuZGVyVGhlbWVHdGszLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9S
ZW5kZXJUaGVtZUd0azMuY3BwCmluZGV4IDI2Y2U3MmQuLjZkNDE0YjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0azMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0azMuY3BwCkBAIC0xMTYsNiArMTE2
LDE1IEBAIHZvaWQgUmVuZGVyVGhlbWVHdGs6OmFkanVzdFJlcGFpbnRSZWN0KGNvbnN0IFJlbmRl
ck9iamVjdCogcmVuZGVyT2JqZWN0LCBJbnRSZWN0CiAgICAgYm9vbCBjaGVja0ludGVyaW9yRm9j
dXMgPSBmYWxzZTsKICAgICBDb250cm9sUGFydCBwYXJ0ID0gcmVuZGVyT2JqZWN0LT5zdHlsZSgp
LT5hcHBlYXJhbmNlKCk7CiAgICAgc3dpdGNoIChwYXJ0KSB7CisgICAgY2FzZSBDaGVja2JveFBh
cnQ6CisgICAgY2FzZSBSYWRpb1BhcnQ6CisgICAgICAgIGNvbnRleHQgPSBnZXRTdHlsZUNvbnRl
eHQocGFydCA9PSBDaGVja2JveFBhcnQgPyBHVEtfVFlQRV9DSEVDS19CVVRUT04gOiBHVEtfVFlQ
RV9SQURJT19CVVRUT04pOworCisgICAgICAgIGdpbnQgaW5kaWNhdG9yU3BhY2luZzsKKyAgICAg
ICAgZ3RrX3N0eWxlX2NvbnRleHRfZ2V0X3N0eWxlKGNvbnRleHQsICJpbmRpY2F0b3Itc3BhY2lu
ZyIsICZpbmRpY2F0b3JTcGFjaW5nLCBOVUxMKTsKKyAgICAgICAgcmVjdC5pbmZsYXRlKGluZGlj
YXRvclNwYWNpbmcpOworCisgICAgICAgIHJldHVybjsKICAgICBjYXNlIFNsaWRlclZlcnRpY2Fs
UGFydDoKICAgICBjYXNlIFNsaWRlckhvcml6b250YWxQYXJ0OgogICAgICAgICBjb250ZXh0ID0g
Z2V0U3R5bGVDb250ZXh0KHBhcnQgPT0gU2xpZGVyVGh1bWJIb3Jpem9udGFsUGFydCA/ICBHVEtf
VFlQRV9IU0NBTEUgOiBHVEtfVFlQRV9WU0NBTEUpOwpAQCAtMTgyLDQ0ICsxOTEsODcgQEAgYm9v
bCBSZW5kZXJUaGVtZUd0azo6cGFpbnRSZW5kZXJPYmplY3QoR3RrVGhlbWVXaWRnZXRUeXBlIHR5
cGUsIFJlbmRlck9iamVjdCogcmUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGd0a1RleHREaXJlY3Rpb24ocmVuZGVyT2JqZWN0LT5zdHlsZSgpLT5kaXJlY3Rp
b24oKSkpOwogfQogCi1zdGF0aWMgdm9pZCBzZXRUb2dnbGVTaXplKGNvbnN0IFJlbmRlclRoZW1l
R3RrKiB0aGVtZSwgUmVuZGVyU3R5bGUqIHN0eWxlLCBDb250cm9sUGFydCBhcHBlYXJhbmNlKQor
c3RhdGljIHZvaWQgc2V0VG9nZ2xlU2l6ZShHdGtTdHlsZUNvbnRleHQqIGNvbnRleHQsIFJlbmRl
clN0eWxlKiBzdHlsZSkKIHsKICAgICAvLyBUaGUgd2lkdGggYW5kIGhlaWdodCBhcmUgYm90aCBz
cGVjaWZpZWQsIHNvIHdlIHNob3VsZG4ndCBjaGFuZ2UgdGhlbS4KICAgICBpZiAoIXN0eWxlLT53
aWR0aCgpLmlzSW50cmluc2ljT3JBdXRvKCkgJiYgIXN0eWxlLT5oZWlnaHQoKS5pc0F1dG8oKSkK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgLy8gRklYTUU6IFRoaXMgaXMgcHJvYmFibHkgbm90IGNv
cnJlY3QgdXNlIG9mIGluZGljYXRvclNpemUgYW5kIGluZGljYXRvclNwYWNpbmcuCi0gICAgZ2lu
dCBpbmRpY2F0b3JTaXplLCBpbmRpY2F0b3JTcGFjaW5nOwotICAgIHRoZW1lLT5nZXRJbmRpY2F0
b3JNZXRyaWNzKGFwcGVhcmFuY2UsIGluZGljYXRvclNpemUsIGluZGljYXRvclNwYWNpbmcpOwot
Ci0gICAgLy8gT3RoZXIgcG9ydHMgaGFyZC1jb2RlIHRoaXMgdG8gMTMsIGJ1dCBHVEsrIHVzZXJz
IHRlbmQgdG8gZGVtYW5kIHRoZSBuYXRpdmUgbG9vay4KKyAgICAvLyBPdGhlciBwb3J0cyBoYXJk
LWNvZGUgdGhpcyB0byAxMyB3aGljaCBpcyBhbHNvIHRoZSBkZWZhdWx0IHZhbHVlIGRlZmluZWQg
YnkgR1RLKy4KKyAgICAvLyBHVEsrIHVzZXJzIHRlbmQgdG8gZGVtYW5kIHRoZSBuYXRpdmUgbG9v
ay4KICAgICAvLyBJdCBjb3VsZCBiZSBtYWRlIGEgY29uZmlndXJhdGlvbiBvcHRpb24gdmFsdWVz
IG90aGVyIHRoYW4gMTMgYWN0dWFsbHkgYnJlYWsgc2l0ZSBjb21wYXRpYmlsaXR5LgotICAgIGlu
dCBsZW5ndGggPSBpbmRpY2F0b3JTaXplICsgaW5kaWNhdG9yU3BhY2luZzsKKyAgICBnaW50IGlu
ZGljYXRvclNpemU7CisgICAgZ3RrX3N0eWxlX2NvbnRleHRfZ2V0X3N0eWxlKGNvbnRleHQsICJp
bmRpY2F0b3Itc2l6ZSIsICZpbmRpY2F0b3JTaXplLCBOVUxMKTsKKwogICAgIGlmIChzdHlsZS0+
d2lkdGgoKS5pc0ludHJpbnNpY09yQXV0bygpKQotICAgICAgICBzdHlsZS0+c2V0V2lkdGgoTGVu
Z3RoKGxlbmd0aCwgRml4ZWQpKTsKKyAgICAgICAgc3R5bGUtPnNldFdpZHRoKExlbmd0aChpbmRp
Y2F0b3JTaXplLCBGaXhlZCkpOwogCiAgICAgaWYgKHN0eWxlLT5oZWlnaHQoKS5pc0F1dG8oKSkK
LSAgICAgICAgc3R5bGUtPnNldEhlaWdodChMZW5ndGgobGVuZ3RoLCBGaXhlZCkpOworICAgICAg
ICBzdHlsZS0+c2V0SGVpZ2h0KExlbmd0aChpbmRpY2F0b3JTaXplLCBGaXhlZCkpOworfQorCitz
dGF0aWMgdm9pZCBwYWludFRvZ2dsZShjb25zdCBSZW5kZXJUaGVtZUd0ayogdGhlbWUsIEdUeXBl
IHdpZGdldFR5cGUsIFJlbmRlck9iamVjdCogcmVuZGVyT2JqZWN0LCBjb25zdCBQYWludEluZm8m
IHBhaW50SW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkKK3sKKyAgICBHdGtTdHlsZUNvbnRleHQq
IGNvbnRleHQgPSBnZXRTdHlsZUNvbnRleHQod2lkZ2V0VHlwZSk7CisgICAgZ3RrX3N0eWxlX2Nv
bnRleHRfc2F2ZShjb250ZXh0KTsKKworICAgIGd0a19zdHlsZV9jb250ZXh0X3NldF9kaXJlY3Rp
b24oY29udGV4dCwgc3RhdGljX2Nhc3Q8R3RrVGV4dERpcmVjdGlvbj4oZ3RrVGV4dERpcmVjdGlv
bihyZW5kZXJPYmplY3QtPnN0eWxlKCktPmRpcmVjdGlvbigpKSkpOworICAgIGd0a19zdHlsZV9j
b250ZXh0X2FkZF9jbGFzcyhjb250ZXh0LCB3aWRnZXRUeXBlID09IEdUS19UWVBFX0NIRUNLX0JV
VFRPTiA/IEdUS19TVFlMRV9DTEFTU19DSEVDSyA6IEdUS19TVFlMRV9DTEFTU19SQURJTyk7CisK
KyAgICBnaW50IGluZGljYXRvclNpemUsIGluZGljYXRvclNwYWNpbmc7CisgICAgZ3RrX3N0eWxl
X2NvbnRleHRfZ2V0X3N0eWxlKGNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICJpbmRpY2F0b3Itc2l6ZSIsICZpbmRpY2F0b3JTaXplLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAiaW5kaWNhdG9yLXNwYWNpbmciLCAmaW5kaWNhdG9yU3BhY2luZywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisKKyAgICBndWludCBmbGFncyA9
IDA7CisgICAgaWYgKCF0aGVtZS0+aXNFbmFibGVkKHJlbmRlck9iamVjdCkgfHwgdGhlbWUtPmlz
UmVhZE9ubHlDb250cm9sKHJlbmRlck9iamVjdCkpCisgICAgICAgIGZsYWdzIHw9IEdUS19TVEFU
RV9GTEFHX0lOU0VOU0lUSVZFOworICAgIGVsc2UgaWYgKHRoZW1lLT5pc0hvdmVyZWQocmVuZGVy
T2JqZWN0KSkKKyAgICAgICAgZmxhZ3MgfD0gR1RLX1NUQVRFX0ZMQUdfUFJFTElHSFQ7CisgICAg
aWYgKHRoZW1lLT5pc0NoZWNrZWQocmVuZGVyT2JqZWN0KSkKKyAgICAgICAgZmxhZ3MgfD0gR1RL
X1NUQVRFX0ZMQUdfQUNUSVZFOworICAgIGlmICh0aGVtZS0+aXNQcmVzc2VkKHJlbmRlck9iamVj
dCkpCisgICAgICAgIGZsYWdzIHw9IEdUS19TVEFURV9GTEFHX1NFTEVDVEVEOworICAgIGd0a19z
dHlsZV9jb250ZXh0X3NldF9zdGF0ZShjb250ZXh0LCBzdGF0aWNfY2FzdDxHdGtTdGF0ZUZsYWdz
PihmbGFncykpOworCisgICAgSW50UmVjdCBpbmRpY2F0b3JSZWN0KHJlY3QpOworCisgICAgaWYg
KHdpZGdldFR5cGUgPT0gR1RLX1RZUEVfQ0hFQ0tfQlVUVE9OKQorICAgICAgICBndGtfcmVuZGVy
X2NoZWNrKGNvbnRleHQsIHBhaW50SW5mby5jb250ZXh0LT5wbGF0Zm9ybUNvbnRleHQoKSwgcmVj
dC54KCksIHJlY3QueSgpLCByZWN0LndpZHRoKCksIHJlY3QuaGVpZ2h0KCkpOworICAgIGVsc2UK
KyAgICAgICAgZ3RrX3JlbmRlcl9vcHRpb24oY29udGV4dCwgcGFpbnRJbmZvLmNvbnRleHQtPnBs
YXRmb3JtQ29udGV4dCgpLCByZWN0LngoKSwgcmVjdC55KCksIHJlY3Qud2lkdGgoKSwgcmVjdC5o
ZWlnaHQoKSk7CisKKyAgICBpZiAodGhlbWUtPmlzRm9jdXNlZChyZW5kZXJPYmplY3QpKSB7Cisg
ICAgICAgIEludFJlY3QgaW5kaWNhdG9yUmVjdChyZWN0KTsKKyAgICAgICAgaW5kaWNhdG9yUmVj
dC5pbmZsYXRlKGluZGljYXRvclNwYWNpbmcpOworICAgICAgICBndGtfcmVuZGVyX2ZvY3VzKGNv
bnRleHQsIHBhaW50SW5mby5jb250ZXh0LT5wbGF0Zm9ybUNvbnRleHQoKSwgaW5kaWNhdG9yUmVj
dC54KCksIGluZGljYXRvclJlY3QueSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGluZGlj
YXRvclJlY3Qud2lkdGgoKSwgaW5kaWNhdG9yUmVjdC5oZWlnaHQoKSk7CisgICAgfQorCisgICAg
Z3RrX3N0eWxlX2NvbnRleHRfcmVzdG9yZShjb250ZXh0KTsKIH0KIAogdm9pZCBSZW5kZXJUaGVt
ZUd0azo6c2V0Q2hlY2tib3hTaXplKFJlbmRlclN0eWxlKiBzdHlsZSkgY29uc3QKIHsKLSAgICBz
ZXRUb2dnbGVTaXplKHRoaXMsIHN0eWxlLCBSYWRpb1BhcnQpOworICAgIHNldFRvZ2dsZVNpemUo
Z2V0U3R5bGVDb250ZXh0KEdUS19UWVBFX0NIRUNLX0JVVFRPTiksIHN0eWxlKTsKIH0KIAotYm9v
bCBSZW5kZXJUaGVtZUd0azo6cGFpbnRDaGVja2JveChSZW5kZXJPYmplY3QqIG9iamVjdCwgY29u
c3QgUGFpbnRJbmZvJiBpbmZvLCBjb25zdCBJbnRSZWN0JiByZWN0KQorYm9vbCBSZW5kZXJUaGVt
ZUd0azo6cGFpbnRDaGVja2JveChSZW5kZXJPYmplY3QqIHJlbmRlck9iamVjdCwgY29uc3QgUGFp
bnRJbmZvJiBwYWludEluZm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCiB7Ci0gICAgcmV0dXJuIHBh
aW50UmVuZGVyT2JqZWN0KE1PWl9HVEtfQ0hFQ0tCVVRUT04sIG9iamVjdCwgaW5mby5jb250ZXh0
LCByZWN0LCBpc0NoZWNrZWQob2JqZWN0KSk7CisgICAgcGFpbnRUb2dnbGUodGhpcywgR1RLX1RZ
UEVfQ0hFQ0tfQlVUVE9OLCByZW5kZXJPYmplY3QsIHBhaW50SW5mbywgcmVjdCk7CisgICAgcmV0
dXJuIGZhbHNlOwogfQogCiB2b2lkIFJlbmRlclRoZW1lR3RrOjpzZXRSYWRpb1NpemUoUmVuZGVy
U3R5bGUqIHN0eWxlKSBjb25zdAogewotICAgIHNldFRvZ2dsZVNpemUodGhpcywgc3R5bGUsIFJh
ZGlvUGFydCk7CisgICAgc2V0VG9nZ2xlU2l6ZShnZXRTdHlsZUNvbnRleHQoR1RLX1RZUEVfUkFE
SU9fQlVUVE9OKSwgc3R5bGUpOwogfQogCi1ib29sIFJlbmRlclRoZW1lR3RrOjpwYWludFJhZGlv
KFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIGluZm8sIGNvbnN0IEludFJl
Y3QmIHJlY3QpCitib29sIFJlbmRlclRoZW1lR3RrOjpwYWludFJhZGlvKFJlbmRlck9iamVjdCog
cmVuZGVyT2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgSW50UmVjdCYg
cmVjdCkKIHsKLSAgICByZXR1cm4gcGFpbnRSZW5kZXJPYmplY3QoTU9aX0dUS19SQURJT0JVVFRP
Tiwgb2JqZWN0LCBpbmZvLmNvbnRleHQsIHJlY3QsIGlzQ2hlY2tlZChvYmplY3QpKTsKKyAgICBw
YWludFRvZ2dsZSh0aGlzLCBHVEtfVFlQRV9SQURJT19CVVRUT04sIHJlbmRlck9iamVjdCwgcGFp
bnRJbmZvLCByZWN0KTsKKyAgICByZXR1cm4gZmFsc2U7CiB9CiAKIGJvb2wgUmVuZGVyVGhlbWVH
dGs6OnBhaW50QnV0dG9uKFJlbmRlck9iamVjdCogcmVuZGVyT2JqZWN0LCBjb25zdCBQYWludElu
Zm8mIHBhaW50SW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>