<?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>121502</bug_id>
          
          <creation_ts>2013-09-17 10:00:34 -0700</creation_ts>
          <short_desc>Move line grid functions out of RenderBlock and into RenderBlockFlow</short_desc>
          <delta_ts>2013-09-27 11:21:56 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>930277</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2013-09-17 10:00:34 -0700</bug_when>
    <thetext>Only RenderBlockFlows establish line grids, so move all that functionality down into RenderBlockFlow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>930278</commentid>
    <comment_count>1</comment_count>
      <attachid>211919</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2013-09-17 10:01:21 -0700</bug_when>
    <thetext>Created attachment 211919
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>934022</commentid>
    <comment_count>2</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2013-09-27 11:21:56 -0700</bug_when>
    <thetext>Landed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>211919</attachid>
            <date>2013-09-17 10:01:21 -0700</date>
            <delta_ts>2013-09-17 10:04:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>13136</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NTk2NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMwIEBACisyMDEzLTA5LTE3ICBEYXZpZCBI
eWF0dCAgPGh5YXR0QGFwcGxlLmNvbT4KKworICAgICAgICBNb3ZlIGxpbmUgZ3JpZCBmdW5jdGlv
bmFsaXR5IGZyb20gUmVuZGVyQmxvY2sgaW50byBSZW5kZXJCbG9ja0Zsb3cuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjE1MDIKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHJlbmRlcmluZy9MYXlvdXRT
dGF0ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRTdGF0ZTo6TGF5b3V0U3RhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6TGF5b3V0U3RhdGU6OmVzdGFibGlzaExpbmVHcmlkKToKKyAgICAg
ICAgKiByZW5kZXJpbmcvTGF5b3V0U3RhdGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dFN0
YXRlOjpsaW5lR3JpZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjp3aWxsQmVEZXN0cm95ZWQpOgorICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJCbG9jay5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6
OlJlbmRlckJsb2NrUmFyZURhdGE6OlJlbmRlckJsb2NrUmFyZURhdGEpOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxv
Y2tGbG93Ojp3aWxsQmVEZXN0cm95ZWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tG
bG93OjpsYXlvdXRMaW5lR3JpZEJveCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2Nr
Rmxvdy5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tGbG93OjpSZW5kZXJCbG9ja0Zs
b3dSYXJlRGF0YTo6UmVuZGVyQmxvY2tGbG93UmFyZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyQmxvY2tGbG93OjpsaW5lR3JpZEJveCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJC
bG9ja0Zsb3c6OnNldExpbmVHcmlkQm94KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxv
Y2tMaW5lTGF5b3V0LmNwcDoKKyAgICAgICAgKiByZW5kZXJpbmcvUm9vdElubGluZUJveC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSb290SW5saW5lQm94OjpsaW5lU25hcEFkanVzdG1lbnQpOgor
CiAyMDEzLTA5LTE3ICBIYW5zIE11bGxlciAgPGhtdWxsZXJAYWRvYmUuY29tPgogCiAgICAgICAg
IEJhZCBBU1NFUlQoKSBpbiBSYXN0ZXJTaGFwZUludGVydmFsczo6Zmlyc3RJbmNsdWRlZEludGVy
dmFsWSgpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGF5b3V0U3RhdGUuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MYXlvdXRTdGF0ZS5jcHAJKHJl
dmlzaW9uIDE1NTk2MykKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MYXlvdXRTdGF0ZS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTEzMiw3ICsxMzIsNyBAQCBMYXlvdXRTdGF0ZTo6TGF5b3V0
U3RhdGUoTGF5b3V0U3RhdGUqIHByCiAKICAgICAvLyBJZiB3ZSBoYXZlIGEgbmV3IGdyaWQgdG8g
dHJhY2ssIHRoZW4gYWRkIGl0IHRvIG91ciBzZXQuCiAgICAgaWYgKHJlbmRlcmVyLT5zdHlsZSgp
LT5saW5lR3JpZCgpICE9IFJlbmRlclN0eWxlOjppbml0aWFsTGluZUdyaWQoKSAmJiByZW5kZXJl
ci0+aXNSZW5kZXJCbG9ja0Zsb3coKSkKLSAgICAgICAgZXN0YWJsaXNoTGluZUdyaWQodG9SZW5k
ZXJCbG9jayhyZW5kZXJlcikpOworICAgICAgICBlc3RhYmxpc2hMaW5lR3JpZCh0b1JlbmRlckJs
b2NrRmxvdyhyZW5kZXJlcikpOwogCiAgICAgLy8gRklYTUU6IDxodHRwOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQ0Mz4gQXBwbHkgY29udHJvbCBjbGlwIGlmIHByZXNlbnQu
CiB9CkBAIC0yMjgsMTMgKzIyOCwxMyBAQCB2b2lkIExheW91dFN0YXRlOjpwcm9wYWdhdGVMaW5l
R3JpZEluZm8oCiAgICAgbV9saW5lR3JpZFBhZ2luYXRpb25PcmlnaW4gPSBtX25leHQtPm1fbGlu
ZUdyaWRQYWdpbmF0aW9uT3JpZ2luOwogfQogCi12b2lkIExheW91dFN0YXRlOjplc3RhYmxpc2hM
aW5lR3JpZChSZW5kZXJCbG9jayogYmxvY2spCit2b2lkIExheW91dFN0YXRlOjplc3RhYmxpc2hM
aW5lR3JpZChSZW5kZXJCbG9ja0Zsb3cqIGJsb2NrKQogewogICAgIC8vIEZpcnN0IGNoZWNrIHRv
IHNlZSBpZiB0aGlzIGdyaWQgaGFzIGJlZW4gZXN0YWJsaXNoZWQgYWxyZWFkeS4KICAgICBpZiAo
bV9saW5lR3JpZCkgewogICAgICAgICBpZiAobV9saW5lR3JpZC0+c3R5bGUoKS0+bGluZUdyaWQo
KSA9PSBibG9jay0+c3R5bGUoKS0+bGluZUdyaWQoKSkKICAgICAgICAgICAgIHJldHVybjsKLSAg
ICAgICAgUmVuZGVyQmxvY2sqIGN1cnJlbnRHcmlkID0gbV9saW5lR3JpZDsKKyAgICAgICAgUmVu
ZGVyQmxvY2tGbG93KiBjdXJyZW50R3JpZCA9IG1fbGluZUdyaWQ7CiAgICAgICAgIGZvciAoTGF5
b3V0U3RhdGUqIGN1cnJlbnRTdGF0ZSA9IG1fbmV4dDsgY3VycmVudFN0YXRlOyBjdXJyZW50U3Rh
dGUgPSBjdXJyZW50U3RhdGUtPm1fbmV4dCkgewogICAgICAgICAgICAgaWYgKGN1cnJlbnRTdGF0
ZS0+bV9saW5lR3JpZCA9PSBjdXJyZW50R3JpZCkKICAgICAgICAgICAgICAgICBjb250aW51ZTsK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MYXlvdXRTdGF0ZS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MYXlvdXRTdGF0ZS5oCShyZXZpc2lvbiAxNTU5
NjMpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGF5b3V0U3RhdGUuaAkod29ya2luZyBj
b3B5KQpAQCAtMzUsNiArMzUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFJlbmRl
ckFyZW5hOwogY2xhc3MgUmVuZGVyQmxvY2s7CitjbGFzcyBSZW5kZXJCbG9ja0Zsb3c7CiBjbGFz
cyBSZW5kZXJCb3g7CiBjbGFzcyBSZW5kZXJPYmplY3Q7CiBjbGFzcyBSZW5kZXJGbG93VGhyZWFk
OwpAQCAtOTAsNyArOTEsNyBAQCBwdWJsaWM6CiAgICAgTGF5b3V0VW5pdCBwYWdlTG9naWNhbEhl
aWdodCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFnZUxvZ2ljYWxIZWlnaHQ7IH0KICAgICBib29sIHBh
Z2VMb2dpY2FsSGVpZ2h0Q2hhbmdlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFnZUxvZ2ljYWxIZWln
aHRDaGFuZ2VkOyB9CiAKLSAgICBSZW5kZXJCbG9jayogbGluZUdyaWQoKSBjb25zdCB7IHJldHVy
biBtX2xpbmVHcmlkOyB9CisgICAgUmVuZGVyQmxvY2tGbG93KiBsaW5lR3JpZCgpIGNvbnN0IHsg
cmV0dXJuIG1fbGluZUdyaWQ7IH0KICAgICBMYXlvdXRTaXplIGxpbmVHcmlkT2Zmc2V0KCkgY29u
c3QgeyByZXR1cm4gbV9saW5lR3JpZE9mZnNldDsgfQogICAgIExheW91dFNpemUgbGluZUdyaWRQ
YWdpbmF0aW9uT3JpZ2luKCkgY29uc3QgeyByZXR1cm4gbV9saW5lR3JpZFBhZ2luYXRpb25Pcmln
aW47IH0KIApAQCAtMTA2LDcgKzEwNyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCogb3BlcmF0b3Ig
bmV3KHNpemVfdCkgdGhyb3coKTsKIAogICAgIHZvaWQgcHJvcGFnYXRlTGluZUdyaWRJbmZvKFJl
bmRlckJveCopOwotICAgIHZvaWQgZXN0YWJsaXNoTGluZUdyaWQoUmVuZGVyQmxvY2sqKTsKKyAg
ICB2b2lkIGVzdGFibGlzaExpbmVHcmlkKFJlbmRlckJsb2NrRmxvdyopOwogCiAgICAgdm9pZCBj
b21wdXRlTGluZUdyaWRQYWdpbmF0aW9uT3JpZ2luKFJlbmRlckJveCopOwogCkBAIC0xMjMsNyAr
MTI0LDcgQEAgcHVibGljOgogICAgIC8vIElmIHRoZSBlbmNsb3NpbmcgcGFnaW5hdGlvbiBtb2Rl
bCBpcyBhIGNvbHVtbiBtb2RlbCwgdGhlbiB0aGlzIHdpbGwgc3RvcmUgY29sdW1uIGluZm9ybWF0
aW9uIGZvciBlYXN5IHJldHJpZXZhbC9tYW5pcHVsYXRpb24uCiAgICAgQ29sdW1uSW5mbyogbV9j
b2x1bW5JbmZvOwogICAgIC8vIFRoZSBjdXJyZW50IGxpbmUgZ3JpZCB0aGF0IHdlJ3JlIHNuYXBw
aW5nIHRvIGFuZCB0aGUgb2Zmc2V0IG9mIHRoZSBzdGFydCBvZiB0aGUgZ3JpZC4KLSAgICBSZW5k
ZXJCbG9jayogbV9saW5lR3JpZDsKKyAgICBSZW5kZXJCbG9ja0Zsb3cqIG1fbGluZUdyaWQ7CiAg
ICAgTGF5b3V0U3RhdGUqIG1fbmV4dDsKICNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAgICBTaGFw
ZUluc2lkZUluZm8qIG1fc2hhcGVJbnNpZGVJbmZvOwpJbmRleDogU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQmxvY2suY3BwCShyZXZpc2lvbiAxNTU5NjQpCisrKyBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNDgsOSArMjQ4
LDYgQEAgdm9pZCBSZW5kZXJCbG9jazo6d2lsbEJlRGVzdHJveWVkKCkKIAogICAgIG1fbGluZUJv
eGVzLmRlbGV0ZUxpbmVCb3hlcyhyZW5kZXJBcmVuYSgpKTsKIAotICAgIGlmIChsaW5lR3JpZEJv
eCgpKQotICAgICAgICBsaW5lR3JpZEJveCgpLT5kZXN0cm95KHJlbmRlckFyZW5hKCkpOwotCiAg
ICAgaWYgKFVOTElLRUxZKGdEZWxheWVkVXBkYXRlU2Nyb2xsSW5mb1NldCAhPSAwKSkKICAgICAg
ICAgZ0RlbGF5ZWRVcGRhdGVTY3JvbGxJbmZvU2V0LT5yZW1vdmUodGhpcyk7CiAKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oCShyZXZpc2lvbiAxNTU5NjQpCisrKyBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suaAkod29ya2luZyBjb3B5KQpAQCAt
MzQwLDE3ICszNDAsNiBAQCBwdWJsaWM6CiAgICAgTGF5b3V0VW5pdCBwYWdlTG9naWNhbE9mZnNl
dCgpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZURhdGEgPyBtX3JhcmVEYXRhLT5tX3BhZ2VMb2dpY2Fs
T2Zmc2V0IDogTGF5b3V0VW5pdCgpOyB9CiAgICAgdm9pZCBzZXRQYWdlTG9naWNhbE9mZnNldChM
YXlvdXRVbml0KTsKIAotICAgIFJvb3RJbmxpbmVCb3gqIGxpbmVHcmlkQm94KCkgY29uc3QgeyBy
ZXR1cm4gbV9yYXJlRGF0YSA/IG1fcmFyZURhdGEtPm1fbGluZUdyaWRCb3ggOiAwOyB9Ci0gICAg
dm9pZCBzZXRMaW5lR3JpZEJveChSb290SW5saW5lQm94KiBib3gpCi0gICAgewotICAgICAgICBp
ZiAoIW1fcmFyZURhdGEpCi0gICAgICAgICAgICBtX3JhcmVEYXRhID0gYWRvcHRQdHIobmV3IFJl
bmRlckJsb2NrUmFyZURhdGEoKSk7Ci0gICAgICAgIGlmIChtX3JhcmVEYXRhLT5tX2xpbmVHcmlk
Qm94KQotICAgICAgICAgICAgbV9yYXJlRGF0YS0+bV9saW5lR3JpZEJveC0+ZGVzdHJveShyZW5k
ZXJBcmVuYSgpKTsKLSAgICAgICAgbV9yYXJlRGF0YS0+bV9saW5lR3JpZEJveCA9IGJveDsKLSAg
ICB9Ci0gICAgdm9pZCBsYXlvdXRMaW5lR3JpZEJveCgpOwotCiAgICAgLy8gQWNjZXNzb3JzIGZv
ciBsb2dpY2FsIHdpZHRoL2hlaWdodCBhbmQgbWFyZ2lucyBpbiB0aGUgY29udGFpbmluZyBibG9j
aydzIGJsb2NrLWZsb3cgZGlyZWN0aW9uLgogICAgIGVudW0gQXBwbHlMYXlvdXREZWx0YU1vZGUg
eyBBcHBseUxheW91dERlbHRhLCBEb05vdEFwcGx5TGF5b3V0RGVsdGEgfTsKICAgICBMYXlvdXRV
bml0IGxvZ2ljYWxXaWR0aEZvckNoaWxkKGNvbnN0IFJlbmRlckJveCogY2hpbGQpIGNvbnN0IHsg
cmV0dXJuIGlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkgPyBjaGlsZC0+d2lkdGgoKSA6IGNoaWxk
LT5oZWlnaHQoKTsgfQpAQCAtODk0LDE0ICs4ODMsMTEgQEAgcHVibGljOgogICAgICAgICBSZW5k
ZXJCbG9ja1JhcmVEYXRhKCkgCiAgICAgICAgICAgICA6IG1fcGFnaW5hdGlvblN0cnV0KDApCiAg
ICAgICAgICAgICAsIG1fcGFnZUxvZ2ljYWxPZmZzZXQoMCkKLSAgICAgICAgICAgICwgbV9saW5l
R3JpZEJveCgwKQogICAgICAgICB7IAogICAgICAgICB9CiAKICAgICAgICAgTGF5b3V0VW5pdCBt
X3BhZ2luYXRpb25TdHJ1dDsKICAgICAgICAgTGF5b3V0VW5pdCBtX3BhZ2VMb2dpY2FsT2Zmc2V0
OwotICAgICAgICAKLSAgICAgICAgUm9vdElubGluZUJveCogbV9saW5lR3JpZEJveDsKIAogI2lm
IEVOQUJMRShDU1NfU0hBUEVTKQogICAgICAgICBPd25QdHI8U2hhcGVJbnNpZGVJbmZvPiBtX3No
YXBlSW5zaWRlSW5mbzsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
a0Zsb3cuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJC
bG9ja0Zsb3cuY3BwCShyZXZpc2lvbiAxNTU5NjQpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyQmxvY2tGbG93LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksNyBAQAog
I2luY2x1ZGUgIlJlbmRlckZsb3dUaHJlYWQuaCIKICNpbmNsdWRlICJSZW5kZXJMYXllci5oIgog
I2luY2x1ZGUgIlJlbmRlclZpZXcuaCIKKyNpbmNsdWRlICJWZXJ0aWNhbFBvc2l0aW9uQ2FjaGUu
aCIKIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIApAQCAtODQsNiArODUsMTQgQEAgUmVuZGVyQmxv
Y2tGbG93Ojp+UmVuZGVyQmxvY2tGbG93KCkKIHsKIH0KIAordm9pZCBSZW5kZXJCbG9ja0Zsb3c6
OndpbGxCZURlc3Ryb3llZCgpCit7CisgICAgaWYgKGxpbmVHcmlkQm94KCkpCisgICAgICAgIGxp
bmVHcmlkQm94KCktPmRlc3Ryb3kocmVuZGVyQXJlbmEoKSk7CisKKyAgICBSZW5kZXJCbG9jazo6
d2lsbEJlRGVzdHJveWVkKCk7Cit9CisKIHZvaWQgUmVuZGVyQmxvY2tGbG93OjpjbGVhckZsb2F0
cygpCiB7CiAgICAgaWYgKG1fZmxvYXRpbmdPYmplY3RzKQpAQCAtMTQzNSw0ICsxNDQ0LDI3IEBA
IGJvb2wgUmVuZGVyQmxvY2tGbG93OjpyZWxheW91dFRvQXZvaWRXaWQKICAgICByZXR1cm4gdHJ1
ZTsKIH0KIAordm9pZCBSZW5kZXJCbG9ja0Zsb3c6OmxheW91dExpbmVHcmlkQm94KCkKK3sKKyAg
ICBpZiAoc3R5bGUoKS0+bGluZUdyaWQoKSA9PSBSZW5kZXJTdHlsZTo6aW5pdGlhbExpbmVHcmlk
KCkpIHsKKyAgICAgICAgc2V0TGluZUdyaWRCb3goMCk7CisgICAgICAgIHJldHVybjsKKyAgICB9
CisgICAgCisgICAgc2V0TGluZUdyaWRCb3goMCk7CisKKyAgICBSb290SW5saW5lQm94KiBsaW5l
R3JpZEJveCA9IG5ldyAocmVuZGVyQXJlbmEoKSkgUm9vdElubGluZUJveCgqdGhpcyk7CisgICAg
bGluZUdyaWRCb3gtPnNldEhhc1RleHRDaGlsZHJlbigpOyAvLyBOZWVkZWQgdG8gbWFrZSB0aGUg
bGluZSBhc2NlbnQvZGVzY2VudCBhY3R1YWxseSBiZSBob25vcmVkIGluIHF1aXJrcyBtb2RlLgor
ICAgIGxpbmVHcmlkQm94LT5zZXRDb25zdHJ1Y3RlZCgpOworICAgIEdseXBoT3ZlcmZsb3dBbmRG
YWxsYmFja0ZvbnRzTWFwIHRleHRCb3hEYXRhTWFwOworICAgIFZlcnRpY2FsUG9zaXRpb25DYWNo
ZSB2ZXJ0aWNhbFBvc2l0aW9uQ2FjaGU7CisgICAgbGluZUdyaWRCb3gtPmFsaWduQm94ZXNJbkJs
b2NrRGlyZWN0aW9uKGxvZ2ljYWxIZWlnaHQoKSwgdGV4dEJveERhdGFNYXAsIHZlcnRpY2FsUG9z
aXRpb25DYWNoZSk7CisgICAgCisgICAgc2V0TGluZUdyaWRCb3gobGluZUdyaWRCb3gpOworICAg
IAorICAgIC8vIEZJWE1FOiBJZiBhbnkgb2YgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiB0aGUgYm94
IGNoYW5nZSBjb21wYXJlZCB0byB0aGUgb2xkIG9uZSwgdGhlbiB3ZSBuZWVkIHRvIGRvIGEgZGVl
cCBkaXJ0eWluZworICAgIC8vIChzaW1pbGFyIHRvIHdoYXQgaGFwcGVucyB3aGVuIHRoZSBwYWdl
IGhlaWdodCBjaGFuZ2VzKS4gSWRlYWxseSwgdGhvdWdoLCB3ZSBvbmx5IGRvIHRoaXMgaWYgc29t
ZW9uZSBpcyBhY3R1YWxseSBzbmFwcGluZworICAgIC8vIHRvIHRoaXMgZ3JpZC4KK30KKwogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJsb2NrRmxvdy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCbG9ja0Zsb3cuaAkocmV2aXNpb24gMTU1OTY0KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJsb2NrRmxvdy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw4ICszNSwxMCBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCBib29sIGlzUmVuZGVyQmxvY2tGbG93KCkgY29uc3QgT1ZFUlJJ
REUgRklOQUwgeyByZXR1cm4gdHJ1ZTsgfQogICAgIAogICAgIHZpcnR1YWwgdm9pZCBsYXlvdXRC
bG9jayhib29sIHJlbGF5b3V0Q2hpbGRyZW4sIExheW91dFVuaXQgcGFnZUxvZ2ljYWxIZWlnaHQg
PSAwKSBPVkVSUklERTsKLSAgICAKKwogcHJvdGVjdGVkOgorICAgIHZpcnR1YWwgdm9pZCB3aWxs
QmVEZXN0cm95ZWQoKSBPVkVSUklERTsKKyAgICAKICAgICAvLyBUaGlzIG1ldGhvZCBpcyBjYWxs
ZWQgYXQgdGhlIHN0YXJ0IG9mIGxheW91dCB0byB3aXBlIGF3YXkgYWxsIG9mIHRoZSBmbG9hdHMg
aW4gb3VyIGZsb2F0aW5nIG9iamVjdHMgbGlzdC4gSXQgYWxzbwogICAgIC8vIHJlcG9wdWxhdGVz
IHRoZSBsaXN0IHdpdGggYW55IGZsb2F0cyB0aGF0IGludHJ1ZGUgZnJvbSBwcmV2aW91cyBzaWJs
aW5ncyBvciBwYXJlbnRzLiBGbG9hdHMgdGhhdCB3ZXJlIGFkZGVkIGJ5CiAgICAgLy8gZGVzY2Vu
ZGFudHMgYXJlIGdvbmUgd2hlbiB0aGlzIGNhbGwgY29tcGxldGVzIGFuZCB3aWxsIGdldCBhZGRl
ZCBiYWNrIGxhdGVyIG9uIGFmdGVyIHRoZSBjaGlsZHJlbiBoYXZlIGdvdHRlbgpAQCAtODcsNiAr
ODksNyBAQCBwdWJsaWM6CiAgICAgICAgIFJlbmRlckJsb2NrRmxvd1JhcmVEYXRhKGNvbnN0IFJl
bmRlckJsb2NrRmxvdyogYmxvY2spCiAgICAgICAgICAgICA6IG1fbWFyZ2lucyhwb3NpdGl2ZU1h
cmdpbkJlZm9yZURlZmF1bHQoYmxvY2spLCBuZWdhdGl2ZU1hcmdpbkJlZm9yZURlZmF1bHQoYmxv
Y2spLCBwb3NpdGl2ZU1hcmdpbkFmdGVyRGVmYXVsdChibG9jayksIG5lZ2F0aXZlTWFyZ2luQWZ0
ZXJEZWZhdWx0KGJsb2NrKSkKICAgICAgICAgICAgICwgbV9saW5lQnJlYWtUb0F2b2lkV2lkb3co
LTEpCisgICAgICAgICAgICAsIG1fbGluZUdyaWRCb3goMCkKICAgICAgICAgICAgICwgbV9kaXNj
YXJkTWFyZ2luQmVmb3JlKGZhbHNlKQogICAgICAgICAgICAgLCBtX2Rpc2NhcmRNYXJnaW5BZnRl
cihmYWxzZSkKICAgICAgICAgICAgICwgbV9zaG91bGRCcmVha0F0TGluZVRvQXZvaWRXaWRvdyhm
YWxzZSkKQEAgLTExMiw2ICsxMTUsOCBAQCBwdWJsaWM6CiAgICAgICAgIAogICAgICAgICBNYXJn
aW5WYWx1ZXMgbV9tYXJnaW5zOwogICAgICAgICBpbnQgbV9saW5lQnJlYWtUb0F2b2lkV2lkb3c7
CisgICAgICAgIFJvb3RJbmxpbmVCb3gqIG1fbGluZUdyaWRCb3g7CisKICAgICAgICAgYm9vbCBt
X2Rpc2NhcmRNYXJnaW5CZWZvcmUgOiAxOwogICAgICAgICBib29sIG1fZGlzY2FyZE1hcmdpbkFm
dGVyIDogMTsKICAgICAgICAgYm9vbCBtX3Nob3VsZEJyZWFrQXRMaW5lVG9Bdm9pZFdpZG93IDog
MTsKQEAgLTIxMyw2ICsyMTgsMTcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0QnJlYWtBdExpbmVU
b0F2b2lkV2lkb3coaW50KTsKICAgICBib29sIHJlbGF5b3V0VG9Bdm9pZFdpZG93cyhMYXlvdXRT
dGF0ZU1haW50YWluZXImKTsKIAorICAgIFJvb3RJbmxpbmVCb3gqIGxpbmVHcmlkQm94KCkgY29u
c3QgeyByZXR1cm4gbV9yYXJlRGF0YSA/IG1fcmFyZURhdGEtPm1fbGluZUdyaWRCb3ggOiAwOyB9
CisgICAgdm9pZCBzZXRMaW5lR3JpZEJveChSb290SW5saW5lQm94KiBib3gpCisgICAgeworICAg
ICAgICBpZiAoIW1fcmFyZURhdGEpCisgICAgICAgICAgICBtX3JhcmVEYXRhID0gYWRvcHRQdHIo
bmV3IFJlbmRlckJsb2NrRmxvd1JhcmVEYXRhKHRoaXMpKTsKKyAgICAgICAgaWYgKG1fcmFyZURh
dGEtPm1fbGluZUdyaWRCb3gpCisgICAgICAgICAgICBtX3JhcmVEYXRhLT5tX2xpbmVHcmlkQm94
LT5kZXN0cm95KHJlbmRlckFyZW5hKCkpOworICAgICAgICBtX3JhcmVEYXRhLT5tX2xpbmVHcmlk
Qm94ID0gYm94OworICAgIH0KKyAgICB2b2lkIGxheW91dExpbmVHcmlkQm94KCk7CisKIHByb3Rl
Y3RlZDoKICAgICBMYXlvdXRVbml0IG1heFBvc2l0aXZlTWFyZ2luQmVmb3JlKCkgY29uc3QgeyBy
ZXR1cm4gbV9yYXJlRGF0YSA/IG1fcmFyZURhdGEtPm1fbWFyZ2lucy5wb3NpdGl2ZU1hcmdpbkJl
Zm9yZSgpIDogUmVuZGVyQmxvY2tGbG93UmFyZURhdGE6OnBvc2l0aXZlTWFyZ2luQmVmb3JlRGVm
YXVsdCh0aGlzKTsgfQogICAgIExheW91dFVuaXQgbWF4TmVnYXRpdmVNYXJnaW5CZWZvcmUoKSBj
b25zdCB7IHJldHVybiBtX3JhcmVEYXRhID8gbV9yYXJlRGF0YS0+bV9tYXJnaW5zLm5lZ2F0aXZl
TWFyZ2luQmVmb3JlKCkgOiBSZW5kZXJCbG9ja0Zsb3dSYXJlRGF0YTo6bmVnYXRpdmVNYXJnaW5C
ZWZvcmVEZWZhdWx0KHRoaXMpOyB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQmxvY2tMaW5lTGF5b3V0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcAkocmV2aXNpb24gMTU1OTY0KQorKysgU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTMzNzYsMjggKzMzNzYsNCBAQCBMYXlvdXRVbml0IFJlbmRlckJsb2NrOjpzdGFy
dEFsaWduZWRPZmZzCiAgICAgcmV0dXJuIGxvZ2ljYWxMZWZ0OwogfQogCi0KLXZvaWQgUmVuZGVy
QmxvY2s6OmxheW91dExpbmVHcmlkQm94KCkKLXsKLSAgICBpZiAoc3R5bGUoKS0+bGluZUdyaWQo
KSA9PSBSZW5kZXJTdHlsZTo6aW5pdGlhbExpbmVHcmlkKCkpIHsKLSAgICAgICAgc2V0TGluZUdy
aWRCb3goMCk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgCi0gICAgc2V0TGluZUdyaWRC
b3goMCk7Ci0KLSAgICBSb290SW5saW5lQm94KiBsaW5lR3JpZEJveCA9IG5ldyAocmVuZGVyQXJl
bmEoKSkgUm9vdElubGluZUJveCgqdGhpcyk7Ci0gICAgbGluZUdyaWRCb3gtPnNldEhhc1RleHRD
aGlsZHJlbigpOyAvLyBOZWVkZWQgdG8gbWFrZSB0aGUgbGluZSBhc2NlbnQvZGVzY2VudCBhY3R1
YWxseSBiZSBob25vcmVkIGluIHF1aXJrcyBtb2RlLgotICAgIGxpbmVHcmlkQm94LT5zZXRDb25z
dHJ1Y3RlZCgpOwotICAgIEdseXBoT3ZlcmZsb3dBbmRGYWxsYmFja0ZvbnRzTWFwIHRleHRCb3hE
YXRhTWFwOwotICAgIFZlcnRpY2FsUG9zaXRpb25DYWNoZSB2ZXJ0aWNhbFBvc2l0aW9uQ2FjaGU7
Ci0gICAgbGluZUdyaWRCb3gtPmFsaWduQm94ZXNJbkJsb2NrRGlyZWN0aW9uKGxvZ2ljYWxIZWln
aHQoKSwgdGV4dEJveERhdGFNYXAsIHZlcnRpY2FsUG9zaXRpb25DYWNoZSk7Ci0gICAgCi0gICAg
c2V0TGluZUdyaWRCb3gobGluZUdyaWRCb3gpOwotICAgIAotICAgIC8vIEZJWE1FOiBJZiBhbnkg
b2YgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiB0aGUgYm94IGNoYW5nZSBjb21wYXJlZCB0byB0aGUg
b2xkIG9uZSwgdGhlbiB3ZSBuZWVkIHRvIGRvIGEgZGVlcCBkaXJ0eWluZwotICAgIC8vIChzaW1p
bGFyIHRvIHdoYXQgaGFwcGVucyB3aGVuIHRoZSBwYWdlIGhlaWdodCBjaGFuZ2VzKS4gSWRlYWxs
eSwgdGhvdWdoLCB3ZSBvbmx5IGRvIHRoaXMgaWYgc29tZW9uZSBpcyBhY3R1YWxseSBzbmFwcGlu
ZwotICAgIC8vIHRvIHRoaXMgZ3JpZC4KLX0KLQogfQpJbmRleDogU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9Sb290SW5saW5lQm94LmNwcAkocmV2aXNpb24gMTU1OTYzKQorKysgU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw3
ICszMyw2IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhaW50SW5mby5oIgogI2lu
Y2x1ZGUgIlJlbmRlckFyZW5hLmgiCi0jaW5jbHVkZSAiUmVuZGVyQmxvY2suaCIKICNpbmNsdWRl
ICJSZW5kZXJGbG93VGhyZWFkLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmlldy5oIgogI2luY2x1ZGUg
IlZlcnRpY2FsUG9zaXRpb25DYWNoZS5oIgpAQCAtMzg1LDcgKzM4NCw3IEBAIExheW91dFVuaXQg
Um9vdElubGluZUJveDo6bGluZVNuYXBBZGp1c3QKIAogICAgIC8vIEdldCB0aGUgY3VycmVudCBs
aW5lIGdyaWQgYW5kIG9mZnNldC4KICAgICBMYXlvdXRTdGF0ZSogbGF5b3V0U3RhdGUgPSBibG9j
aygpLnZpZXcoKS5sYXlvdXRTdGF0ZSgpOwotICAgIFJlbmRlckJsb2NrKiBsaW5lR3JpZCA9IGxh
eW91dFN0YXRlLT5saW5lR3JpZCgpOworICAgIFJlbmRlckJsb2NrRmxvdyogbGluZUdyaWQgPSBs
YXlvdXRTdGF0ZS0+bGluZUdyaWQoKTsKICAgICBMYXlvdXRTaXplIGxpbmVHcmlkT2Zmc2V0ID0g
bGF5b3V0U3RhdGUtPmxpbmVHcmlkT2Zmc2V0KCk7CiAgICAgaWYgKCFsaW5lR3JpZCB8fCBsaW5l
R3JpZC0+c3R5bGUoKS0+d3JpdGluZ01vZGUoKSAhPSBibG9jaygpLnN0eWxlKCktPndyaXRpbmdN
b2RlKCkpCiAgICAgICAgIHJldHVybiAwOwo=
</data>
<flag name="review"
          id="234058"
          type_id="1"
          status="+"
          setter="dino"
    />
          </attachment>
      

    </bug>

</bugzilla>