<?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>54933</bug_id>
          
          <creation_ts>2011-02-21 20:44:48 -0800</creation_ts>
          <short_desc>Make Editor::selectionComputedStyle return EditingStyle</short_desc>
          <delta_ts>2011-02-22 21:35:59 -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>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>54932</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>darin</cc>
    
    <cc>enrica</cc>
    
    <cc>eric</cc>
    
    <cc>ojan</cc>
    
    <cc>tkent</cc>
    
    <cc>tony</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>355020</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-02-21 20:44:48 -0800</bug_when>
    <thetext>This is a cleanup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355022</commentid>
    <comment_count>1</comment_count>
      <attachid>83262</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-02-21 20:56:43 -0800</bug_when>
    <thetext>Created attachment 83262
cleanup</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355463</commentid>
    <comment_count>2</comment_count>
      <attachid>83262</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-02-22 12:02:04 -0800</bug_when>
    <thetext>Comment on attachment 83262
cleanup

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        Renamed selectionComputedStyle to selectionStartComputedStyle and changed the return type to EditingStyle.
&gt; +        It also no longer takes a boolean shouldUseFixedFontDefaultSize.

I’m not sure this function needs the word computed in it any more. When the function returned a CSS style object, then it needed computed in its name because of how the same data structure is used for actual computed style and other style purposes. I think maybe selectionStartStyle would be a suitable name.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355756</commentid>
    <comment_count>3</comment_count>
      <attachid>83262</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-02-22 18:55:49 -0800</bug_when>
    <thetext>Comment on attachment 83262
cleanup

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

&gt;&gt; Source/WebCore/ChangeLog:9
&gt;&gt; +        It also no longer takes a boolean shouldUseFixedFontDefaultSize.
&gt; 
&gt; I’m not sure this function needs the word computed in it any more. When the function returned a CSS style object, then it needed computed in its name because of how the same data structure is used for actual computed style and other style purposes. I think maybe selectionStartStyle would be a suitable name.

Sounds good to me.  Will rename before landing.  Thanks for the reviews!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355839</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-02-22 21:35:59 -0800</bug_when>
    <thetext>Committed r79398: &lt;http://trac.webkit.org/changeset/79398&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83262</attachid>
            <date>2011-02-21 20:56:43 -0800</date>
            <delta_ts>2011-02-22 18:55:49 -0800</delta_ts>
            <desc>cleanup</desc>
            <filename>bug-54933-20110222135641.patch</filename>
            <type>text/plain</type>
            <size>17015</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc5MjgzKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDEgQEAKKzIwMTEtMDItMjEgIFJ5b3N1a2Ug
Tml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgTWFrZSBFZGl0b3I6OnNlbGVjdGlvbkNvbXB1dGVkU3R5bGUgcmV0
dXJuIEVkaXRpbmdTdHlsZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTQ5MzMKKworICAgICAgICBSZW5hbWVkIHNlbGVjdGlvbkNvbXB1dGVkU3R5bGUg
dG8gc2VsZWN0aW9uU3RhcnRDb21wdXRlZFN0eWxlIGFuZCBjaGFuZ2VkIHRoZSByZXR1cm4gdHlw
ZSB0byBFZGl0aW5nU3R5bGUuCisgICAgICAgIEl0IGFsc28gbm8gbG9uZ2VyIHRha2VzIGEgYm9v
bGVhbiBzaG91bGRVc2VGaXhlZEZvbnREZWZhdWx0U2l6ZS4KKworICAgICAgICBBbHNvIGFkZGVk
IEVkaXRpbmdTdHlsZTo6bWVyZ2VUeXBpbmdTdHlsZSB3aGljaCByZXBsYWNlZCBvbGQgZWRpdGlu
Z1N0eWxlSW5jbHVkaW5nVHlwaW5nU3R5bGUuIFRoaXMgZnVuY3Rpb24KKyAgICAgICAgZG9lc24n
dCBleHRyYWN0IGluaGVyaXRhYmxlIHByb3BlcnRpZXMgcHJpb3IgdG8gbWVyZ2UgYmVjYXVzZSB0
aGlzIHR1cm5lZCBvdXQgYmUgYSBidWcsIHdoaWNoIHdhcyByZXZlYWxlZAorICAgICAgICBieSBh
biBleGlzdGluZyBsYXlvdXQgdGVzdCBvbmx5IGFmdGVyIHRoZSBjb2RlIHdhcyBzaGFyZWQgd2l0
aCBzZWxlY3Rpb25TdGFydENvbXB1dGVkU3R5bGUuCisKKyAgICAgICAgTm8gdGVzdHMgYXJlIGFk
ZGVkIHNpbmNlIHRoaXMgaXMgYSByZWZhY3RvcmluZy4KKworICAgICAgICAqIGVkaXRpbmcvQ29t
cG9zaXRlRWRpdENvbW1hbmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRlRWRpdENv
bW1hbmQ6Om1vdmVQYXJhZ3JhcGhzKTogQ2FsbHMgRWRpdGluZ1N0eWxlOjpjcmVhdGUgYW5kIEVk
aXRpbmdTdHlsZTo6bWVyZ2VUeXBpbmdTdHlsZS4KKyAgICAgICAgKFdlYkNvcmU6OkNvbXBvc2l0
ZUVkaXRDb21tYW5kOjpicmVha091dE9mRW1wdHlMaXN0SXRlbSk6IERpdHRvLgorICAgICAgICAq
IGVkaXRpbmcvRWRpdGluZ1N0eWxlLmNwcDogUmVtb3ZlZCBlZGl0aW5nU3R5bGVJbmNsdWRpbmdU
eXBpbmdTdHlsZS4KKyAgICAgICAgKFdlYkNvcmU6OkVkaXRpbmdTdHlsZTo6bWVyZ2VUeXBpbmdT
dHlsZSk6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvRWRpdGluZ1N0eWxlLmg6CisgICAgICAg
IChXZWJDb3JlOjpFZGl0aW5nU3R5bGU6OnNob3VsZFVzZUZpeGVkRGVmYXVsdEZvbnRTaXplKTog
QWRkZWQuCisgICAgICAgICogZWRpdGluZy9FZGl0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RWRpdG9yOjpzZWxlY3Rpb25TdGFydEhhc1N0eWxlKTogQ2FsbHMgc2VsZWN0aW9uU3RhcnRDb21w
dXRlZFN0eWxlLgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpzZWxlY3Rpb25IYXNTdHlsZSk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpzZWxlY3Rpb25TdGFydENTU1Byb3Bl
cnR5VmFsdWUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6c2VsZWN0aW9uU3Rh
cnRDb21wdXRlZFN0eWxlKTogUmVuYW1lZCBmcm9tIHNlbGVjdGlvbkNvbXB1dGVkU3R5bGU7IHJl
dHVybnMgRWRpdGluZ1N0eWxlLgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6CisgICAgICAg
ICogZWRpdGluZy9FZGl0b3JDb21tYW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmV4ZWN1dGVU
b2dnbGVTdHlsZUluTGlzdCk6IENhbGxzIHNlbGVjdGlvblN0YXJ0Q29tcHV0ZWRTdHlsZS4KKyAg
ICAgICAgKiBlZGl0aW5nL0luc2VydExpbmVCcmVha0NvbW1hbmQuY3BwOgorICAgICAgICAqIGVk
aXRpbmcvSW5zZXJ0UGFyYWdyYXBoU2VwYXJhdG9yQ29tbWFuZC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpJbnNlcnRQYXJhZ3JhcGhTZXBhcmF0b3JDb21tYW5kOjpjYWxjdWxhdGVTdHlsZUJlZm9y
ZUluc2VydGlvbik6IENhbGxzIEVkaXRpbmdTdHlsZTo6Y3JlYXRlIGFuZAorICAgICAgICBFZGl0
aW5nU3R5bGU6Om1lcmdlVHlwaW5nU3R5bGUuCisgICAgICAgICogZWRpdGluZy9SZXBsYWNlU2Vs
ZWN0aW9uQ29tbWFuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXBsYWNlU2VsZWN0aW9uQ29t
bWFuZDo6ZG9BcHBseSk6IERpdHRvLgorCiAyMDExLTAyLTIxICBOaWNvIFdlYmVyICA8dGhha2lz
QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW50IFRhbXVyYS4KSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuY3BwCShy
ZXZpc2lvbiA3OTI3OCkKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENv
bW1hbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NjcsNyArOTY3LDggQEAgdm9pZCBDb21wb3Np
dGVFZGl0Q29tbWFuZDo6bW92ZVBhcmFncmFwaAogICAgIC8vIHRvbywgPGRpdj48Yj48YnI+PC9i
PjwvZGl2PiBmb3IgZXhhbXBsZS4gIFNhdmUgaXQgc28gdGhhdCB3ZSBjYW4gcHJlc2VydmUgaXQg
bGF0ZXIuCiAgICAgUmVmUHRyPEVkaXRpbmdTdHlsZT4gc3R5bGVJbkVtcHR5UGFyYWdyYXBoOwog
ICAgIGlmIChzdGFydE9mUGFyYWdyYXBoVG9Nb3ZlID09IGVuZE9mUGFyYWdyYXBoVG9Nb3ZlICYm
IHByZXNlcnZlU3R5bGUpIHsKLSAgICAgICAgc3R5bGVJbkVtcHR5UGFyYWdyYXBoID0gZWRpdGlu
Z1N0eWxlSW5jbHVkaW5nVHlwaW5nU3R5bGUoc3RhcnRPZlBhcmFncmFwaFRvTW92ZS5kZWVwRXF1
aXZhbGVudCgpKTsKKyAgICAgICAgc3R5bGVJbkVtcHR5UGFyYWdyYXBoID0gRWRpdGluZ1N0eWxl
OjpjcmVhdGUoc3RhcnRPZlBhcmFncmFwaFRvTW92ZS5kZWVwRXF1aXZhbGVudCgpKTsKKyAgICAg
ICAgc3R5bGVJbkVtcHR5UGFyYWdyYXBoLT5tZXJnZVR5cGluZ1N0eWxlKGRvY3VtZW50KCkpOwog
ICAgICAgICAvLyBUaGUgbW92ZWQgcGFyYWdyYXBoIHNob3VsZCBhc3N1bWUgdGhlIGJsb2NrIHN0
eWxlIG9mIHRoZSBkZXN0aW5hdGlvbi4KICAgICAgICAgc3R5bGVJbkVtcHR5UGFyYWdyYXBoLT5y
ZW1vdmVCbG9ja1Byb3BlcnRpZXMoKTsKICAgICB9CkBAIC0xMDM2LDcgKzEwMzcsOCBAQCBib29s
IENvbXBvc2l0ZUVkaXRDb21tYW5kOjpicmVha091dE9mRW1wCiAgICAgaWYgKCFlbXB0eUxpc3RJ
dGVtKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBSZWZQdHI8RWRpdGluZ1N0eWxlPiBz
dHlsZSA9IGVkaXRpbmdTdHlsZUluY2x1ZGluZ1R5cGluZ1N0eWxlKGVuZGluZ1NlbGVjdGlvbigp
LnN0YXJ0KCkpOworICAgIFJlZlB0cjxFZGl0aW5nU3R5bGU+IHN0eWxlID0gRWRpdGluZ1N0eWxl
OjpjcmVhdGUoZW5kaW5nU2VsZWN0aW9uKCkuc3RhcnQoKSk7CisgICAgc3R5bGUtPm1lcmdlVHlw
aW5nU3R5bGUoZG9jdW1lbnQoKSk7CiAKICAgICBDb250YWluZXJOb2RlKiBsaXN0Tm9kZSA9IGVt
cHR5TGlzdEl0ZW0tPnBhcmVudE5vZGUoKTsKICAgICAvLyBGSVhNRTogQ2FuJ3Qgd2UgZG8gc29t
ZXRoaW5nIGJldHRlciB3aGVuIHRoZSBpbW1lZGlhdGUgcGFyZW50IHdhc24ndCBhIGxpc3Qgbm9k
ZT8KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdGluZ1N0eWxlLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRpbmdTdHlsZS5jcHAJKHJldmlzaW9u
IDc5Mjc4KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0aW5nU3R5bGUuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zNTksMTMgKzM1OSwxOCBAQCB2b2lkIEVkaXRpbmdTdHlsZTo6cHJlcGFy
ZVRvQXBwbHlBdChjb25zCiAgICAgfQogfQogCi1QYXNzUmVmUHRyPEVkaXRpbmdTdHlsZT4gZWRp
dGluZ1N0eWxlSW5jbHVkaW5nVHlwaW5nU3R5bGUoY29uc3QgUG9zaXRpb24mIHBvc2l0aW9uKQor
dm9pZCBFZGl0aW5nU3R5bGU6Om1lcmdlVHlwaW5nU3R5bGUoRG9jdW1lbnQqIGRvY3VtZW50KQog
ewotICAgIFJlZlB0cjxFZGl0aW5nU3R5bGU+IGVkaXRpbmdTdHlsZSA9IEVkaXRpbmdTdHlsZTo6
Y3JlYXRlKHBvc2l0aW9uKTsKLSAgICBSZWZQdHI8RWRpdGluZ1N0eWxlPiB0eXBpbmdTdHlsZSA9
IHBvc2l0aW9uLmFuY2hvck5vZGUoKS0+ZG9jdW1lbnQoKS0+ZnJhbWUoKS0+c2VsZWN0aW9uKCkt
PnR5cGluZ1N0eWxlKCk7Ci0gICAgaWYgKHR5cGluZ1N0eWxlICYmIHR5cGluZ1N0eWxlLT5zdHls
ZSgpKQotICAgICAgICBlZGl0aW5nU3R5bGUtPnN0eWxlKCktPm1lcmdlKGNvcHlFZGl0aW5nUHJv
cGVydGllcyh0eXBpbmdTdHlsZS0+c3R5bGUoKSkuZ2V0KCkpOwotICAgIHJldHVybiBlZGl0aW5n
U3R5bGU7CisgICAgQVNTRVJUKGRvY3VtZW50KTsKKworICAgIFJlZlB0cjxFZGl0aW5nU3R5bGU+
IHR5cGluZ1N0eWxlID0gZG9jdW1lbnQtPmZyYW1lKCktPnNlbGVjdGlvbigpLT50eXBpbmdTdHls
ZSgpOworICAgIGlmICghdHlwaW5nU3R5bGUgfHwgIXR5cGluZ1N0eWxlLT5zdHlsZSgpIHx8IHR5
cGluZ1N0eWxlID09IHRoaXMpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChtX211dGFibGVT
dHlsZSkKKyAgICAgICAgbV9tdXRhYmxlU3R5bGUtPm1lcmdlKHR5cGluZ1N0eWxlLT5zdHlsZSgp
LCB0cnVlKTsKKyAgICBlbHNlCisgICAgICAgIG1fbXV0YWJsZVN0eWxlID0gdHlwaW5nU3R5bGUt
PnN0eWxlKCktPmNvcHkoKTsKIH0KICAgICAKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvRWRpdGluZ1N0eWxlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGluZy9F
ZGl0aW5nU3R5bGUuaAkocmV2aXNpb24gNzkyNzgpCisrKyBTb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L0VkaXRpbmdTdHlsZS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0MCw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIGNsYXNzIENTU1N0eWxlRGVjbGFyYXRpb247CiBjbGFzcyBDU1NDb21wdXRl
ZFN0eWxlRGVjbGFyYXRpb247CiBjbGFzcyBDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbjsKK2Ns
YXNzIERvY3VtZW50OwogY2xhc3MgTm9kZTsKIGNsYXNzIFBvc2l0aW9uOwogY2xhc3MgUmVuZGVy
U3R5bGU7CkBAIC04OCw5ICs4OSwxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCByZW1vdmVOb25FZGl0
aW5nUHJvcGVydGllcygpOwogICAgIHZvaWQgY29sbGFwc2VUZXh0RGVjb3JhdGlvblByb3BlcnRp
ZXMoKTsKICAgICB2b2lkIHByZXBhcmVUb0FwcGx5QXQoY29uc3QgUG9zaXRpb24mLCBTaG91bGRQ
cmVzZXJ2ZVdyaXRpbmdEaXJlY3Rpb24gPSBEb05vdFByZXNlcnZlV3JpdGluZ0RpcmVjdGlvbik7
CisgICAgdm9pZCBtZXJnZVR5cGluZ1N0eWxlKERvY3VtZW50Kik7CiAKICAgICBmbG9hdCBmb250
U2l6ZURlbHRhKCkgY29uc3QgeyByZXR1cm4gbV9mb250U2l6ZURlbHRhOyB9CiAgICAgYm9vbCBo
YXNGb250U2l6ZURlbHRhKCkgY29uc3QgeyByZXR1cm4gbV9mb250U2l6ZURlbHRhICE9IE5vRm9u
dERlbHRhOyB9CisgICAgYm9vbCBzaG91bGRVc2VGaXhlZERlZmF1bHRGb250U2l6ZSgpIGNvbnN0
IHsgcmV0dXJuIG1fc2hvdWxkVXNlRml4ZWREZWZhdWx0Rm9udFNpemU7IH0KIAogcHJpdmF0ZToK
ICAgICBFZGl0aW5nU3R5bGUoKTsKQEAgLTEwNyw4ICsxMTAsNiBAQCBwcml2YXRlOgogICAgIGZs
b2F0IG1fZm9udFNpemVEZWx0YTsKIH07CiAKLVBhc3NSZWZQdHI8RWRpdGluZ1N0eWxlPiBlZGl0
aW5nU3R5bGVJbmNsdWRpbmdUeXBpbmdTdHlsZShjb25zdCBQb3NpdGlvbiYpOwotICAgIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRWRpdGluZ1N0eWxlX2gKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL0VkaXRvci5jcHAJKHJldmlzaW9uIDc5Mjc4KQorKysgU291cmNlL1dlYkNv
cmUvZWRpdGluZy9FZGl0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05ODUsMzggKzk4NSwzOCBA
QCBzdGF0aWMgVHJpU3RhdGUgdHJpU3RhdGVPZlN0eWxlKENTU1N0eWxlCiAKIGJvb2wgRWRpdG9y
OjpzZWxlY3Rpb25TdGFydEhhc1N0eWxlKENTU1N0eWxlRGVjbGFyYXRpb24qIHN0eWxlKSBjb25z
dAogewotICAgIGJvb2wgc2hvdWxkVXNlRml4ZWRGb250RGVmYXVsdFNpemU7Ci0gICAgUmVmUHRy
PENTU011dGFibGVTdHlsZURlY2xhcmF0aW9uPiBzZWxlY3Rpb25TdHlsZSA9IHNlbGVjdGlvbkNv
bXB1dGVkU3R5bGUoc2hvdWxkVXNlRml4ZWRGb250RGVmYXVsdFNpemUpOwotICAgIGlmICghc2Vs
ZWN0aW9uU3R5bGUpCisgICAgUmVmUHRyPEVkaXRpbmdTdHlsZT4gc2VsZWN0aW9uU3R5bGUgPSBz
ZWxlY3Rpb25TdGFydENvbXB1dGVkU3R5bGUoKTsKKyAgICBpZiAoIXNlbGVjdGlvblN0eWxlIHx8
ICFzZWxlY3Rpb25TdHlsZS0+c3R5bGUoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHJl
dHVybiB0cmlTdGF0ZU9mU3R5bGUoc3R5bGUsIHNlbGVjdGlvblN0eWxlLmdldCgpKSA9PSBUcnVl
VHJpU3RhdGU7CisgICAgcmV0dXJuIHRyaVN0YXRlT2ZTdHlsZShzdHlsZSwgc2VsZWN0aW9uU3R5
bGUtPnN0eWxlKCkpID09IFRydWVUcmlTdGF0ZTsKIH0KIAogVHJpU3RhdGUgRWRpdG9yOjpzZWxl
Y3Rpb25IYXNTdHlsZShDU1NTdHlsZURlY2xhcmF0aW9uKiBzdHlsZSkgY29uc3QKIHsKLSAgICBU
cmlTdGF0ZSBzdGF0ZSA9IEZhbHNlVHJpU3RhdGU7CisgICAgaWYgKCFtX2ZyYW1lLT5zZWxlY3Rp
b24oKS0+aXNDYXJldE9yUmFuZ2UoKSkKKyAgICAgICAgcmV0dXJuIEZhbHNlVHJpU3RhdGU7CiAK
LSAgICBpZiAoIW1fZnJhbWUtPnNlbGVjdGlvbigpLT5pc1JhbmdlKCkpIHsKLSAgICAgICAgYm9v
bCBzaG91bGRVc2VGaXhlZEZvbnREZWZhdWx0U2l6ZTsKLSAgICAgICAgUmVmUHRyPENTU011dGFi
bGVTdHlsZURlY2xhcmF0aW9uPiBzZWxlY3Rpb25TdHlsZSA9IHNlbGVjdGlvbkNvbXB1dGVkU3R5
bGUoc2hvdWxkVXNlRml4ZWRGb250RGVmYXVsdFNpemUpOwotICAgICAgICBpZiAoIXNlbGVjdGlv
blN0eWxlKQorICAgIGlmIChtX2ZyYW1lLT5zZWxlY3Rpb24oKS0+aXNDYXJldCgpKSB7CisgICAg
ICAgIFJlZlB0cjxFZGl0aW5nU3R5bGU+IHNlbGVjdGlvblN0eWxlID0gc2VsZWN0aW9uU3RhcnRD
b21wdXRlZFN0eWxlKCk7CisgICAgICAgIGlmICghc2VsZWN0aW9uU3R5bGUgfHwgIXNlbGVjdGlv
blN0eWxlLT5zdHlsZSgpKQogICAgICAgICAgICAgcmV0dXJuIEZhbHNlVHJpU3RhdGU7Ci0gICAg
ICAgIHN0YXRlID0gdHJpU3RhdGVPZlN0eWxlKHN0eWxlLCBzZWxlY3Rpb25TdHlsZS5nZXQoKSk7
Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgZm9yIChOb2RlKiBub2RlID0gbV9mcmFtZS0+c2VsZWN0
aW9uKCktPnN0YXJ0KCkuZGVwcmVjYXRlZE5vZGUoKTsgbm9kZTsgbm9kZSA9IG5vZGUtPnRyYXZl
cnNlTmV4dE5vZGUoKSkgewotICAgICAgICAgICAgUmVmUHRyPENTU0NvbXB1dGVkU3R5bGVEZWNs
YXJhdGlvbj4gbm9kZVN0eWxlID0gY29tcHV0ZWRTdHlsZShub2RlKTsKLSAgICAgICAgICAgIGlm
IChub2RlU3R5bGUpIHsKLSAgICAgICAgICAgICAgICBUcmlTdGF0ZSBub2RlU3RhdGUgPSB0cmlT
dGF0ZU9mU3R5bGUoc3R5bGUsIG5vZGVTdHlsZS5nZXQoKSwgIW5vZGUtPmlzVGV4dE5vZGUoKSk7
Ci0gICAgICAgICAgICAgICAgaWYgKG5vZGUgPT0gbV9mcmFtZS0+c2VsZWN0aW9uKCktPnN0YXJ0
KCkuZGVwcmVjYXRlZE5vZGUoKSkKLSAgICAgICAgICAgICAgICAgICAgc3RhdGUgPSBub2RlU3Rh
dGU7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAoc3RhdGUgIT0gbm9kZVN0YXRlICYmIG5vZGUt
PmlzVGV4dE5vZGUoKSkgewotICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9IE1peGVkVHJpU3Rh
dGU7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIGlmIChub2RlID09IG1fZnJhbWUtPnNlbGVjdGlvbigpLT5l
bmQoKS5kZXByZWNhdGVkTm9kZSgpKQorICAgICAgICByZXR1cm4gdHJpU3RhdGVPZlN0eWxlKHN0
eWxlLCBzZWxlY3Rpb25TdHlsZS0+c3R5bGUoKSk7CisgICAgfQorCisgICAgVHJpU3RhdGUgc3Rh
dGUgPSBGYWxzZVRyaVN0YXRlOworICAgIGZvciAoTm9kZSogbm9kZSA9IG1fZnJhbWUtPnNlbGVj
dGlvbigpLT5zdGFydCgpLmRlcHJlY2F0ZWROb2RlKCk7IG5vZGU7IG5vZGUgPSBub2RlLT50cmF2
ZXJzZU5leHROb2RlKCkpIHsKKyAgICAgICAgUmVmUHRyPENTU0NvbXB1dGVkU3R5bGVEZWNsYXJh
dGlvbj4gbm9kZVN0eWxlID0gY29tcHV0ZWRTdHlsZShub2RlKTsKKyAgICAgICAgaWYgKG5vZGVT
dHlsZSkgeworICAgICAgICAgICAgVHJpU3RhdGUgbm9kZVN0YXRlID0gdHJpU3RhdGVPZlN0eWxl
KHN0eWxlLCBub2RlU3R5bGUuZ2V0KCksICFub2RlLT5pc1RleHROb2RlKCkpOworICAgICAgICAg
ICAgaWYgKG5vZGUgPT0gbV9mcmFtZS0+c2VsZWN0aW9uKCktPnN0YXJ0KCkuZGVwcmVjYXRlZE5v
ZGUoKSkKKyAgICAgICAgICAgICAgICBzdGF0ZSA9IG5vZGVTdGF0ZTsKKyAgICAgICAgICAgIGVs
c2UgaWYgKHN0YXRlICE9IG5vZGVTdGF0ZSAmJiBub2RlLT5pc1RleHROb2RlKCkpIHsKKyAgICAg
ICAgICAgICAgICBzdGF0ZSA9IE1peGVkVHJpU3RhdGU7CiAgICAgICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgICAgICB9CiAgICAgICAgIH0KKyAgICAgICAgaWYgKG5vZGUgPT0gbV9mcmFtZS0+
c2VsZWN0aW9uKCktPmVuZCgpLmRlcHJlY2F0ZWROb2RlKCkpCisgICAgICAgICAgICBicmVhazsK
ICAgICB9CiAKICAgICByZXR1cm4gc3RhdGU7CkBAIC0xMDQwLDMzICsxMDQwLDMwIEBAIHN0YXRp
YyBib29sIGhhc1RyYW5zcGFyZW50QmFja2dyb3VuZENvbG8KIAogU3RyaW5nIEVkaXRvcjo6c2Vs
ZWN0aW9uU3RhcnRDU1NQcm9wZXJ0eVZhbHVlKGludCBwcm9wZXJ0eUlEKQogewotICAgIGJvb2wg
c2hvdWxkVXNlRml4ZWRGb250RGVmYXVsdFNpemUgPSBmYWxzZTsKLSAgICBSZWZQdHI8Q1NTTXV0
YWJsZVN0eWxlRGVjbGFyYXRpb24+IHNlbGVjdGlvblN0eWxlID0gc2VsZWN0aW9uQ29tcHV0ZWRT
dHlsZShzaG91bGRVc2VGaXhlZEZvbnREZWZhdWx0U2l6ZSk7Ci0gICAgaWYgKCFzZWxlY3Rpb25T
dHlsZSkKKyAgICBSZWZQdHI8RWRpdGluZ1N0eWxlPiBzZWxlY3Rpb25TdHlsZSA9IHNlbGVjdGlv
blN0YXJ0Q29tcHV0ZWRTdHlsZSgpOworICAgIGlmICghc2VsZWN0aW9uU3R5bGUtPnN0eWxlKCkp
CiAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKIAotICAgIFN0cmluZyB2YWx1ZSA9IHNlbGVjdGlv
blN0eWxlLT5nZXRQcm9wZXJ0eVZhbHVlKHByb3BlcnR5SUQpOworICAgIFN0cmluZyB2YWx1ZSA9
IHNlbGVjdGlvblN0eWxlLT5zdHlsZSgpLT5nZXRQcm9wZXJ0eVZhbHVlKHByb3BlcnR5SUQpOwog
CiAgICAgLy8gSWYgYmFja2dyb3VuZCBjb2xvciBpcyB0cmFuc3BhcmVudCwgdHJhdmVyc2UgcGFy
ZW50IG5vZGVzIHVudGlsIHdlIGhpdCBhIGRpZmZlcmVudCB2YWx1ZSBvciBkb2N1bWVudCByb290
CiAgICAgLy8gQWxzbywgaWYgdGhlIHNlbGVjdGlvbiBpcyBhIHJhbmdlLCBpZ25vcmUgdGhlIGJh
Y2tncm91bmQgY29sb3IgYXQgdGhlIHN0YXJ0IG9mIHNlbGVjdGlvbiwKICAgICAvLyBhbmQgZmlu
ZCB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgY29tbW9uIGFuY2VzdG9yLgotICAgIGlmIChw
cm9wZXJ0eUlEID09IENTU1Byb3BlcnR5QmFja2dyb3VuZENvbG9yICYmIChtX2ZyYW1lLT5zZWxl
Y3Rpb24oKS0+aXNSYW5nZSgpIHx8IGhhc1RyYW5zcGFyZW50QmFja2dyb3VuZENvbG9yKHNlbGVj
dGlvblN0eWxlLmdldCgpKSkpIHsKKyAgICBpZiAocHJvcGVydHlJRCA9PSBDU1NQcm9wZXJ0eUJh
Y2tncm91bmRDb2xvciAmJiAobV9mcmFtZS0+c2VsZWN0aW9uKCktPmlzUmFuZ2UoKSB8fCBoYXNU
cmFuc3BhcmVudEJhY2tncm91bmRDb2xvcihzZWxlY3Rpb25TdHlsZS0+c3R5bGUoKSkpKSB7CiAg
ICAgICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2UobV9mcmFtZS0+c2VsZWN0aW9uKCktPnRvTm9ybWFs
aXplZFJhbmdlKCkpOwogICAgICAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKICAgICAgICAgZm9y
IChOb2RlKiBhbmNlc3RvciA9IHJhbmdlLT5jb21tb25BbmNlc3RvckNvbnRhaW5lcihlYyk7IGFu
Y2VzdG9yOyBhbmNlc3RvciA9IGFuY2VzdG9yLT5wYXJlbnROb2RlKCkpIHsKLSAgICAgICAgICAg
IHNlbGVjdGlvblN0eWxlID0gY29tcHV0ZWRTdHlsZShhbmNlc3RvciktPmNvcHkoKTsKLSAgICAg
ICAgICAgIGlmICghaGFzVHJhbnNwYXJlbnRCYWNrZ3JvdW5kQ29sb3Ioc2VsZWN0aW9uU3R5bGUu
Z2V0KCkpKSB7Ci0gICAgICAgICAgICAgICAgdmFsdWUgPSBzZWxlY3Rpb25TdHlsZS0+Z2V0UHJv
cGVydHlWYWx1ZShDU1NQcm9wZXJ0eUJhY2tncm91bmRDb2xvcik7Ci0gICAgICAgICAgICAgICAg
YnJlYWs7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBSZWZQdHI8Q1NTQ29tcHV0ZWRTdHls
ZURlY2xhcmF0aW9uPiBhbmNlc3RvclN0eWxlID0gY29tcHV0ZWRTdHlsZShhbmNlc3Rvcik7Cisg
ICAgICAgICAgICBpZiAoIWhhc1RyYW5zcGFyZW50QmFja2dyb3VuZENvbG9yKGFuY2VzdG9yU3R5
bGUuZ2V0KCkpKQorICAgICAgICAgICAgICAgIHJldHVybiBhbmNlc3RvclN0eWxlLT5nZXRQcm9w
ZXJ0eVZhbHVlKENTU1Byb3BlcnR5QmFja2dyb3VuZENvbG9yKTsKICAgICAgICAgfQogICAgIH0K
IAogICAgIGlmIChwcm9wZXJ0eUlEID09IENTU1Byb3BlcnR5Rm9udFNpemUpIHsKLSAgICAgICAg
UmVmUHRyPENTU1ZhbHVlPiBjc3NWYWx1ZSA9IHNlbGVjdGlvblN0eWxlLT5nZXRQcm9wZXJ0eUNT
U1ZhbHVlKENTU1Byb3BlcnR5Rm9udFNpemUpOworICAgICAgICBSZWZQdHI8Q1NTVmFsdWU+IGNz
c1ZhbHVlID0gc2VsZWN0aW9uU3R5bGUtPnN0eWxlKCktPmdldFByb3BlcnR5Q1NTVmFsdWUoQ1NT
UHJvcGVydHlGb250U2l6ZSk7CiAgICAgICAgIGlmIChjc3NWYWx1ZS0+aXNQcmltaXRpdmVWYWx1
ZSgpKSB7CiAgICAgICAgICAgICB2YWx1ZSA9IFN0cmluZzo6bnVtYmVyKGxlZ2FjeUZvbnRTaXpl
RnJvbUNTU1ZhbHVlKG1fZnJhbWUtPmRvY3VtZW50KCksIHN0YXRpY19jYXN0PENTU1ByaW1pdGl2
ZVZhbHVlKj4oY3NzVmFsdWUuZ2V0KCkpLAotICAgICAgICAgICAgICAgIHNob3VsZFVzZUZpeGVk
Rm9udERlZmF1bHRTaXplLCBBbHdheXNVc2VMZWdhY3lGb250U2l6ZSkpOworICAgICAgICAgICAg
ICAgIHNlbGVjdGlvblN0eWxlLT5zaG91bGRVc2VGaXhlZERlZmF1bHRGb250U2l6ZSgpLCBBbHdh
eXNVc2VMZWdhY3lGb250U2l6ZSkpOwogICAgICAgICB9CiAgICAgfQogCkBAIC0zMTc2LDcgKzMx
NzMsNyBAQCB2b2lkIEVkaXRvcjo6Y29tcHV0ZUFuZFNldFR5cGluZ1N0eWxlKENTCiAgICAgbV9m
cmFtZS0+c2VsZWN0aW9uKCktPnNldFR5cGluZ1N0eWxlKHR5cGluZ1N0eWxlKTsKIH0KIAotUGFz
c1JlZlB0cjxDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbj4gRWRpdG9yOjpzZWxlY3Rpb25Db21w
dXRlZFN0eWxlKGJvb2wmIHNob3VsZFVzZUZpeGVkRm9udERlZmF1bHRTaXplKSBjb25zdAorUGFz
c1JlZlB0cjxFZGl0aW5nU3R5bGU+IEVkaXRvcjo6c2VsZWN0aW9uU3RhcnRDb21wdXRlZFN0eWxl
KCkgY29uc3QKIHsKICAgICBpZiAobV9mcmFtZS0+c2VsZWN0aW9uKCktPmlzTm9uZSgpKQogICAg
ICAgICByZXR1cm4gMDsKQEAgLTMxOTYsMTkgKzMxOTMsOSBAQCBQYXNzUmVmUHRyPENTU011dGFi
bGVTdHlsZURlY2xhcmF0aW9uPiBFCiAgICAgaWYgKCFlbGVtZW50KQogICAgICAgICByZXR1cm4g
MDsKIAotICAgIFJlZlB0cjxFbGVtZW50PiBzdHlsZUVsZW1lbnQgPSBlbGVtZW50OwotICAgIFJl
ZlB0cjxDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24+IHN0eWxlID0gY29tcHV0ZWRTdHlsZShz
dHlsZUVsZW1lbnQucmVsZWFzZSgpKTsKLSAgICBSZWZQdHI8Q1NTTXV0YWJsZVN0eWxlRGVjbGFy
YXRpb24+IG11dGFibGVTdHlsZSA9IHN0eWxlLT5jb3B5KCk7Ci0gICAgc2hvdWxkVXNlRml4ZWRG
b250RGVmYXVsdFNpemUgPSBzdHlsZS0+dXNlRml4ZWRGb250RGVmYXVsdFNpemUoKTsKLQotICAg
IGlmICghbV9mcmFtZS0+c2VsZWN0aW9uKCktPnR5cGluZ1N0eWxlKCkpCi0gICAgICAgIHJldHVy
biBtdXRhYmxlU3R5bGU7Ci0KLSAgICBSZWZQdHI8RWRpdGluZ1N0eWxlPiB0eXBpbmdTdHlsZSA9
IG1fZnJhbWUtPnNlbGVjdGlvbigpLT50eXBpbmdTdHlsZSgpLT5jb3B5KCk7Ci0gICAgdHlwaW5n
U3R5bGUtPnByZXBhcmVUb0FwcGx5QXQocG9zaXRpb24pOwotICAgIG11dGFibGVTdHlsZS0+bWVy
Z2UodHlwaW5nU3R5bGUtPnN0eWxlKCkpOwotCi0gICAgcmV0dXJuIG11dGFibGVTdHlsZTsKKyAg
ICBSZWZQdHI8RWRpdGluZ1N0eWxlPiBzdHlsZSA9IEVkaXRpbmdTdHlsZTo6Y3JlYXRlKGVsZW1l
bnQsIEVkaXRpbmdTdHlsZTo6QWxsUHJvcGVydGllcyk7CisgICAgc3R5bGUtPm1lcmdlVHlwaW5n
U3R5bGUobV9mcmFtZS0+ZG9jdW1lbnQoKSk7CisgICAgcmV0dXJuIHN0eWxlOwogfQogCiB2b2lk
IEVkaXRvcjo6dGV4dEZpZWxkRGlkQmVnaW5FZGl0aW5nKEVsZW1lbnQqIGUpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvRWRpdG9yLmgJKHJldmlzaW9uIDc5Mjc4KQorKysgU291cmNlL1dlYkNvcmUvZWRp
dGluZy9FZGl0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMzY1LDcgKzM2NSw3IEBAIHB1YmxpYzoK
ICAgICBib29sIG1hcmtlZFRleHRNYXRjaGVzQXJlSGlnaGxpZ2h0ZWQoKSBjb25zdDsKICAgICB2
b2lkIHNldE1hcmtlZFRleHRNYXRjaGVzQXJlSGlnaGxpZ2h0ZWQoYm9vbCk7CiAKLSAgICBQYXNz
UmVmUHRyPENTU011dGFibGVTdHlsZURlY2xhcmF0aW9uPiBzZWxlY3Rpb25Db21wdXRlZFN0eWxl
KGJvb2wmIHNob3VsZFVzZUZpeGVkRm9udERlZmF1bHRTaXplKSBjb25zdDsKKyAgICBQYXNzUmVm
UHRyPEVkaXRpbmdTdHlsZT4gc2VsZWN0aW9uU3RhcnRDb21wdXRlZFN0eWxlKCkgY29uc3Q7CiAK
ICAgICB2b2lkIHRleHRGaWVsZERpZEJlZ2luRWRpdGluZyhFbGVtZW50Kik7CiAgICAgdm9pZCB0
ZXh0RmllbGREaWRFbmRFZGl0aW5nKEVsZW1lbnQqKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvRWRpdG9yQ29tbWFuZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRp
dGluZy9FZGl0b3JDb21tYW5kLmNwcAkocmV2aXNpb24gNzkyNzgpCisrKyBTb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0VkaXRvckNvbW1hbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMzIsMTIgKzEz
MiwxMSBAQCBzdGF0aWMgYm9vbCBleGVjdXRlQXBwbHlTdHlsZShGcmFtZSogZnJhCiBzdGF0aWMg
Ym9vbCBleGVjdXRlVG9nZ2xlU3R5bGVJbkxpc3QoRnJhbWUqIGZyYW1lLCBFZGl0b3JDb21tYW5k
U291cmNlIHNvdXJjZSwgRWRpdEFjdGlvbiBhY3Rpb24sIGludCBwcm9wZXJ0eUlELCBDU1NWYWx1
ZSogdmFsdWUpCiB7CiAgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7Ci0gICAgYm9vbCBzaG91bGRV
c2VGaXhlZEZvbnREZWZhdWx0U2l6ZTsKLSAgICBSZWZQdHI8Q1NTTXV0YWJsZVN0eWxlRGVjbGFy
YXRpb24+IHNlbGVjdGlvblN0eWxlID0gZnJhbWUtPmVkaXRvcigpLT5zZWxlY3Rpb25Db21wdXRl
ZFN0eWxlKHNob3VsZFVzZUZpeGVkRm9udERlZmF1bHRTaXplKTsKLSAgICBpZiAoIXNlbGVjdGlv
blN0eWxlKQorICAgIFJlZlB0cjxFZGl0aW5nU3R5bGU+IHNlbGVjdGlvblN0eWxlID0gZnJhbWUt
PmVkaXRvcigpLT5zZWxlY3Rpb25TdGFydENvbXB1dGVkU3R5bGUoKTsKKyAgICBpZiAoIXNlbGVj
dGlvblN0eWxlIHx8ICFzZWxlY3Rpb25TdHlsZS0+c3R5bGUoKSkKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogCi0gICAgUmVmUHRyPENTU1ZhbHVlPiBzZWxlY3RlZENTU1ZhbHVlID0gc2VsZWN0aW9u
U3R5bGUtPmdldFByb3BlcnR5Q1NTVmFsdWUocHJvcGVydHlJRCk7CisgICAgUmVmUHRyPENTU1Zh
bHVlPiBzZWxlY3RlZENTU1ZhbHVlID0gc2VsZWN0aW9uU3R5bGUtPnN0eWxlKCktPmdldFByb3Bl
cnR5Q1NTVmFsdWUocHJvcGVydHlJRCk7CiAgICAgU3RyaW5nIG5ld1N0eWxlID0gIm5vbmUiOwog
ICAgIGlmIChzZWxlY3RlZENTU1ZhbHVlLT5pc1ZhbHVlTGlzdCgpKSB7CiAgICAgICAgIFJlZlB0
cjxDU1NWYWx1ZUxpc3Q+IHNlbGVjdGVkQ1NTVmFsdWVMaXN0ID0gc3RhdGljX2Nhc3Q8Q1NTVmFs
dWVMaXN0Kj4oc2VsZWN0ZWRDU1NWYWx1ZS5nZXQoKSk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL0luc2VydExpbmVCcmVha0NvbW1hbmQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvSW5zZXJ0TGluZUJyZWFrQ29tbWFuZC5jcHAJKHJldmlzaW9uIDc5Mjc4
KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy9JbnNlcnRMaW5lQnJlYWtDb21tYW5kLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMjYsNyArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2lu
Y2x1ZGUgIkluc2VydExpbmVCcmVha0NvbW1hbmQuaCIKIAotI2luY2x1ZGUgIkNTU011dGFibGVT
dHlsZURlY2xhcmF0aW9uLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJGcmFt
ZS5oIgogI2luY2x1ZGUgIkhUTUxFbGVtZW50LmgiCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL0luc2VydFBhcmFncmFwaFNlcGFyYXRvckNvbW1hbmQuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvSW5zZXJ0UGFyYWdyYXBoU2VwYXJhdG9yQ29tbWFuZC5jcHAJ
KHJldmlzaW9uIDc5Mjc4KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy9JbnNlcnRQYXJhZ3Jh
cGhTZXBhcmF0b3JDb21tYW5kLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzgsOCArNzgsMTAgQEAg
dm9pZCBJbnNlcnRQYXJhZ3JhcGhTZXBhcmF0b3JDb21tYW5kOjpjYQogICAgIFZpc2libGVQb3Np
dGlvbiB2aXNpYmxlUG9zKHBvcywgVlBfREVGQVVMVF9BRkZJTklUWSk7CiAgICAgaWYgKCFpc1N0
YXJ0T2ZQYXJhZ3JhcGgodmlzaWJsZVBvcykgJiYgIWlzRW5kT2ZQYXJhZ3JhcGgodmlzaWJsZVBv
cykpCiAgICAgICAgIHJldHVybjsKLSAgICAKLSAgICBtX3N0eWxlID0gZWRpdGluZ1N0eWxlSW5j
bHVkaW5nVHlwaW5nU3R5bGUocG9zKTsKKworICAgIEFTU0VSVChwb3MuaXNOb3ROdWxsKCkpOwor
ICAgIG1fc3R5bGUgPSBFZGl0aW5nU3R5bGU6OmNyZWF0ZShwb3MpOworICAgIG1fc3R5bGUtPm1l
cmdlVHlwaW5nU3R5bGUocG9zLmFuY2hvck5vZGUoKS0+ZG9jdW1lbnQoKSk7CiB9CiAKIHZvaWQg
SW5zZXJ0UGFyYWdyYXBoU2VwYXJhdG9yQ29tbWFuZDo6YXBwbHlTdHlsZUFmdGVySW5zZXJ0aW9u
KE5vZGUqIG9yaWdpbmFsRW5jbG9zaW5nQmxvY2spCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcAkocmV2aXNpb24gNzkyNzgp
CisrKyBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNzk3LDggKzc5NywxMCBAQCB2b2lkIFJlcGxhY2VTZWxlY3Rpb25D
b21tYW5kOjpkb0FwcGx5KCkKICAgICAgICAgJiYgKHNlbGVjdGlvbi5lbmQoKS5kZXByZWNhdGVk
Tm9kZSgpLT5yZW5kZXJlcigpICYmIHNlbGVjdGlvbi5lbmQoKS5kZXByZWNhdGVkTm9kZSgpLT5y
ZW5kZXJlcigpLT5zdHlsZSgpLT51c2VyTW9kaWZ5KCkgPT0gUkVBRF9XUklURV9QTEFJTlRFWFRf
T05MWSkpCiAgICAgICAgIG1fbWF0Y2hTdHlsZSA9IGZhbHNlOwogICAgIAotICAgIGlmIChtX21h
dGNoU3R5bGUpCi0gICAgICAgIG1faW5zZXJ0aW9uU3R5bGUgPSBlZGl0aW5nU3R5bGVJbmNsdWRp
bmdUeXBpbmdTdHlsZShzZWxlY3Rpb24uc3RhcnQoKSk7CisgICAgaWYgKG1fbWF0Y2hTdHlsZSkg
eworICAgICAgICBtX2luc2VydGlvblN0eWxlID0gRWRpdGluZ1N0eWxlOjpjcmVhdGUoc2VsZWN0
aW9uLnN0YXJ0KCkpOworICAgICAgICBtX2luc2VydGlvblN0eWxlLT5tZXJnZVR5cGluZ1N0eWxl
KGRvY3VtZW50KCkpOworICAgIH0KIAogICAgIFZpc2libGVQb3NpdGlvbiB2aXNpYmxlU3RhcnQg
PSBzZWxlY3Rpb24udmlzaWJsZVN0YXJ0KCk7CiAgICAgVmlzaWJsZVBvc2l0aW9uIHZpc2libGVF
bmQgPSBzZWxlY3Rpb24udmlzaWJsZUVuZCgpOwo=
</data>
<flag name="review"
          id="75036"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>