<?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>87787</bug_id>
          
          <creation_ts>2012-05-29 15:10:50 -0700</creation_ts>
          <short_desc>[New Multicolumn] Refactor flow thread and region code to use column widths and heights.</short_desc>
          <delta_ts>2012-05-29 15:22:55 -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>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>636484</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2012-05-29 15:10:50 -0700</bug_when>
    <thetext>Refactor flow thread and region code to use column widths and heights.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>636489</commentid>
    <comment_count>1</comment_count>
      <attachid>144632</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2012-05-29 15:14:32 -0700</bug_when>
    <thetext>Created attachment 144632
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>636492</commentid>
    <comment_count>2</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2012-05-29 15:22:55 -0700</bug_when>
    <thetext>Landed in r118839.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>144632</attachid>
            <date>2012-05-29 15:14:32 -0700</date>
            <delta_ts>2012-05-29 15:21:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>14698</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExODgzOCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDUzIEBACisyMDEyLTA1LTI5ICBEYXZpZCBI
eWF0dCAgPGh5YXR0QGFwcGxlLmNvbT4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9ODc3ODcKKyAgICAgICAgCisgICAgICAgIFtOZXcgTXVsdGljb2x1
bW5dIFJlZmFjdG9yIHRoZSByZWdpb24gYW5kIGZsb3cgdGhyZWFkIGNvZGUgc28gdGhhdCBpdCBj
YW4gcGljayB1cCB0aGUgY29ycmVjdCBjb2x1bW4gd2lkdGhzCisgICAgICAgIGFuZCBoZWlnaHRz
IHdoZW4gZGV0ZXJtaW5pbmcgdGhlIGxvZ2ljYWwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgZmxv
dyB0aHJlYWQgaXRzZWxmLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBuZXcgdmlydHVhbCBt
ZXRob2RzIHRvIFJlbmRlclJlZ2lvbjogbG9naWNhbFdpZHRoRm9yRmxvd1RocmVhZENvbnRlbnQg
YW5kIGxvZ2ljYWxIZWlnaHRGb3JGbG93VGhyZWFkQ29udGVudC4KKyAgICAgICAgRm9yIG5vcm1h
bCByZWdpb25zLCB0aGVzZSBtZXRob2RzIHJldHVybiB0aGUgY29udGVudFdpZHRoIGFuZCBjb250
ZW50SGVpZ2h0IG9mIHRoZSByZWdpb25zIHRoZW1zZWx2ZXMuIEZvciBjb2x1bW4gc2V0cywKKyAg
ICAgICAgaG93ZXZlciwgdGhlc2UgbWV0aG9kcyBhY3R1YWxseSByZXR1cm4gdGhlIGNvbHVtbiB3
aWR0aHMgYW5kIGhlaWdodHMuCisgICAgICAgIAorICAgICAgICBUaGlzIGFsbG93cyB0aGUgZmxv
dyB0aHJlYWQgdG8gcHJvcGVybHkgbGF5IG91dCBhY2NvcmRpbmcgdG8gdGhlIGNvbHVtbiB3aWR0
aC4KKyAgICAgICAgCisgICAgICAgIFJlZ2lvbiBpbnZhbGlkYXRpb24gaXMgYWxzbyBkb25lIHBy
b3Blcmx5IGJ5IHVzaW5nIHRoZXNlIG5ldyBtZXRob2RzLgorICAgICAgICAKKyAgICAgICAgSW4g
c29tZSBjYXNlcyB0aGUgY29kZSBpcyBhY3R1YWxseSBzaW1wbGlmaWVkLCBzaW5jZSB3ZSBjYW4g
Z2V0IHJpZCBvZiBzb21lIGlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkgc3dpdGNoaW5nLgorICAg
ICAgICAKKyAgICAgICAgV2l0aCB0aGlzIHBhdGNoIHRoZSBmbG93IHRocmVhZCBub3cgYWN0dWFs
bHkgbGF5cyBvdXQgYW5kIHBhaW50cyBhdCB0aGUgcmlnaHQgd2lkdGggKHNwaWxsaW5nIG91dCBv
ZiB0aGUgcmVnaW9uIHNldCBpbiBhIHNpbmdsZSB1bmJyb2tlbgorICAgICAgICBjb2x1bW4pLgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcmVuZGVy
aW5nL1JlbmRlckZsb3dUaHJlYWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxvd1Ro
cmVhZDo6bGF5b3V0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsb3dUaHJlYWQ6OmNvbXB1
dGVMb2dpY2FsV2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxvd1RocmVhZDo6Y29t
cHV0ZUxvZ2ljYWxIZWlnaHQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJNdWx0aUNvbHVt
bkJsb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck11bHRpQ29sdW1uQmxvY2s6OmVu
c3VyZUNvbHVtblNldHMpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJNdWx0aUNvbHVtbkJs
b2NrLmg6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJNdWx0aUNvbHVtbkJsb2NrOjppc1JlbmRl
ck11bHRpQ29sdW1uQmxvY2spOgorICAgICAgICAoUmVuZGVyTXVsdGlDb2x1bW5CbG9jayk6Cisg
ICAgICAgIChXZWJDb3JlOjp0b1JlbmRlck11bHRpQ29sdW1uQmxvY2spOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck11bHRpQ29sdW1uU2V0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlck11bHRpQ29sdW1uU2V0Ojpjb21wdXRlTG9naWNhbFdpZHRo
KToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTXVsdGlDb2x1
bW5TZXQ6OmNvbXB1dGVMb2dpY2FsSGVpZ2h0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
TXVsdGlDb2x1bW5TZXQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck11bHRpQ29sdW1uU2V0
OjpzZXRDb2x1bW5XaWR0aEFuZENvdW50KToKKyAgICAgICAgKFJlbmRlck11bHRpQ29sdW1uU2V0
KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyT2JqZWN0Lmg6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJPYmplY3Q6OmlzUmVuZGVyTXVsdGlDb2x1bW5CbG9jayk6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlclJlZ2lvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZWdpb246
OmxvZ2ljYWxXaWR0aEZvckZsb3dUaHJlYWRDb250ZW50KToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUmVnaW9uOjpsb2dpY2FsSGVpZ2h0Rm9yRmxvd1RocmVh
ZENvbnRlbnQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUmVnaW9uOjpsYXlvdXQpOgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJSZWdpb24uaDoKKyAgICAgICAgKFJlbmRlclJlZ2lvbik6
CisKIDIwMTItMDUtMjkgIEFsZWMgRmxldHQgIDxhbGVjZmxldHRAY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIEluZGV4ZWREQjogQWxpZ24gY29kZXMgYW5kIG5hbWVzIGZvciBJREItc3BlY2lmaWMg
YW5kIERPTS1zcGVjaWZpYyBlcnJvcnMvZXhjZXB0aW9ucwpJbmRleDogU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckZsb3dUaHJlYWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJGbG93VGhyZWFkLmNwcAkocmV2aXNpb24gMTE4ODA2KQorKysg
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsb3dUaHJlYWQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xNjksMTYgKzE2OSw4IEBAIHZvaWQgUmVuZGVyRmxvd1RocmVhZDo6bGF5b3V0KCkK
ICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICByZWdpb24tPmRlbGV0ZUFsbFJlbmRl
ckJveFJlZ2lvbkluZm8oKTsKIAotICAgICAgICAgICAgICAgIExheW91dFVuaXQgcmVnaW9uTG9n
aWNhbFdpZHRoOwotICAgICAgICAgICAgICAgIExheW91dFVuaXQgcmVnaW9uTG9naWNhbEhlaWdo
dDsKLQotICAgICAgICAgICAgICAgIGlmIChpc0hvcml6b250YWxXcml0aW5nTW9kZSgpKSB7Ci0g
ICAgICAgICAgICAgICAgICAgIHJlZ2lvbkxvZ2ljYWxXaWR0aCA9IHJlZ2lvbi0+Y29udGVudFdp
ZHRoKCk7Ci0gICAgICAgICAgICAgICAgICAgIHJlZ2lvbkxvZ2ljYWxIZWlnaHQgPSByZWdpb24t
PmNvbnRlbnRIZWlnaHQoKTsKLSAgICAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
ICAgICAgICByZWdpb25Mb2dpY2FsV2lkdGggPSByZWdpb24tPmNvbnRlbnRIZWlnaHQoKTsKLSAg
ICAgICAgICAgICAgICAgICAgcmVnaW9uTG9naWNhbEhlaWdodCA9IHJlZ2lvbi0+Y29udGVudFdp
ZHRoKCk7Ci0gICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIExheW91dFVuaXQgcmVn
aW9uTG9naWNhbFdpZHRoID0gcmVnaW9uLT5sb2dpY2FsV2lkdGhGb3JGbG93VGhyZWFkQ29udGVu
dCgpOworICAgICAgICAgICAgICAgIExheW91dFVuaXQgcmVnaW9uTG9naWNhbEhlaWdodCA9IHJl
Z2lvbi0+bG9naWNhbEhlaWdodEZvckZsb3dUaHJlYWRDb250ZW50KCk7CiAKICAgICAgICAgICAg
ICAgICBpZiAoIW1faGFzVmFsaWRSZWdpb25zKQogICAgICAgICAgICAgICAgICAgICBtX2hhc1Zh
bGlkUmVnaW9ucyA9IHRydWU7CkBAIC0xOTksMTUgKzE5MSwxMyBAQCB2b2lkIFJlbmRlckZsb3dU
aHJlYWQ6OmxheW91dCgpCiAgICAgICAgICAgICAgICAgUmVuZGVyUmVnaW9uKiByZWdpb24gPSAq
aXRlcjsKICAgICAgICAgICAgICAgICBpZiAoIXJlZ2lvbi0+aXNWYWxpZCgpKQogICAgICAgICAg
ICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICBMYXlvdXRSZWN0IHJlZ2lvblJl
Y3Q7Ci0gICAgICAgICAgICAgICAgaWYgKGlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkpIHsKLSAg
ICAgICAgICAgICAgICAgICAgcmVnaW9uUmVjdCA9IExheW91dFJlY3Qoc3R5bGUoKS0+ZGlyZWN0
aW9uKCkgPT0gTFRSID8gWkVST19MQVlPVVRfVU5JVCA6IGxvZ2ljYWxXaWR0aCgpIC0gcmVnaW9u
LT5jb250ZW50V2lkdGgoKSwgbG9naWNhbEhlaWdodCwgcmVnaW9uLT5jb250ZW50V2lkdGgoKSwg
cmVnaW9uLT5jb250ZW50SGVpZ2h0KCkpOwotICAgICAgICAgICAgICAgICAgICBsb2dpY2FsSGVp
Z2h0ICs9IHJlZ2lvblJlY3QuaGVpZ2h0KCk7Ci0gICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAg
ICAgICAgICAgICAgICAgICAgcmVnaW9uUmVjdCA9IExheW91dFJlY3QobG9naWNhbEhlaWdodCwg
c3R5bGUoKS0+ZGlyZWN0aW9uKCkgPT0gTFRSID8gWkVST19MQVlPVVRfVU5JVCA6IGxvZ2ljYWxX
aWR0aCgpIC0gcmVnaW9uLT5jb250ZW50SGVpZ2h0KCksIHJlZ2lvbi0+Y29udGVudFdpZHRoKCks
IHJlZ2lvbi0+Y29udGVudEhlaWdodCgpKTsKLSAgICAgICAgICAgICAgICAgICAgbG9naWNhbEhl
aWdodCArPSByZWdpb25SZWN0LndpZHRoKCk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAg
ICAgICAgIHJlZ2lvbi0+c2V0UmVnaW9uUmVjdChyZWdpb25SZWN0KTsKKyAgICAgICAgICAgICAg
ICAgICAgCisgICAgICAgICAgICAgICAgTGF5b3V0VW5pdCByZWdpb25Mb2dpY2FsV2lkdGggPSBy
ZWdpb24tPmxvZ2ljYWxXaWR0aEZvckZsb3dUaHJlYWRDb250ZW50KCk7CisgICAgICAgICAgICAg
ICAgTGF5b3V0VW5pdCByZWdpb25Mb2dpY2FsSGVpZ2h0ID0gcmVnaW9uLT5sb2dpY2FsSGVpZ2h0
Rm9yRmxvd1RocmVhZENvbnRlbnQoKTsKKyAgICAKKyAgICAgICAgICAgICAgICBMYXlvdXRSZWN0
IHJlZ2lvblJlY3Qoc3R5bGUoKS0+ZGlyZWN0aW9uKCkgPT0gTFRSID8gWkVST19MQVlPVVRfVU5J
VCA6IGxvZ2ljYWxXaWR0aCgpIC0gcmVnaW9uTG9naWNhbFdpZHRoLCBsb2dpY2FsSGVpZ2h0LCBy
ZWdpb25Mb2dpY2FsV2lkdGgsIHJlZ2lvbkxvZ2ljYWxIZWlnaHQpOworICAgICAgICAgICAgICAg
IHJlZ2lvbi0+c2V0UmVnaW9uUmVjdChpc0hvcml6b250YWxXcml0aW5nTW9kZSgpID8gcmVnaW9u
UmVjdCA6IHJlZ2lvblJlY3QudHJhbnNwb3NlZFJlY3QoKSk7CisgICAgICAgICAgICAgICAgbG9n
aWNhbEhlaWdodCArPSByZWdpb25Mb2dpY2FsSGVpZ2h0OwogICAgICAgICAgICAgfQogICAgICAg
ICB9CiAgICAgfQpAQCAtMjM1LDcgKzIyNSw3IEBAIHZvaWQgUmVuZGVyRmxvd1RocmVhZDo6Y29t
cHV0ZUxvZ2ljYWxXaWQKICAgICAgICAgaWYgKCFyZWdpb24tPmlzVmFsaWQoKSkKICAgICAgICAg
ICAgIGNvbnRpbnVlOwogICAgICAgICBBU1NFUlQoIXJlZ2lvbi0+bmVlZHNMYXlvdXQoKSk7Ci0g
ICAgICAgIGxvZ2ljYWxXaWR0aCA9IG1heChpc0hvcml6b250YWxXcml0aW5nTW9kZSgpID8gcmVn
aW9uLT5jb250ZW50V2lkdGgoKSA6IHJlZ2lvbi0+Y29udGVudEhlaWdodCgpLCBsb2dpY2FsV2lk
dGgpOworICAgICAgICBsb2dpY2FsV2lkdGggPSBtYXgocmVnaW9uLT5sb2dpY2FsV2lkdGhGb3JG
bG93VGhyZWFkQ29udGVudCgpLCBsb2dpY2FsV2lkdGgpOwogICAgIH0KICAgICBzZXRMb2dpY2Fs
V2lkdGgobG9naWNhbFdpZHRoKTsKIApAQCAtMjQ1LDcgKzIzNSw3IEBAIHZvaWQgUmVuZGVyRmxv
d1RocmVhZDo6Y29tcHV0ZUxvZ2ljYWxXaWQKICAgICAgICAgaWYgKCFyZWdpb24tPmlzVmFsaWQo
KSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAKLSAgICAgICAgTGF5b3V0VW5pdCBy
ZWdpb25Mb2dpY2FsV2lkdGggPSBpc0hvcml6b250YWxXcml0aW5nTW9kZSgpID8gcmVnaW9uLT5j
b250ZW50V2lkdGgoKSA6IHJlZ2lvbi0+Y29udGVudEhlaWdodCgpOworICAgICAgICBMYXlvdXRV
bml0IHJlZ2lvbkxvZ2ljYWxXaWR0aCA9IHJlZ2lvbi0+bG9naWNhbFdpZHRoRm9yRmxvd1RocmVh
ZENvbnRlbnQoKTsKICAgICAgICAgaWYgKHJlZ2lvbkxvZ2ljYWxXaWR0aCAhPSBsb2dpY2FsV2lk
dGgpIHsKICAgICAgICAgICAgIExheW91dFVuaXQgbG9naWNhbExlZnQgPSBzdHlsZSgpLT5kaXJl
Y3Rpb24oKSA9PSBMVFIgPyBaRVJPX0xBWU9VVF9VTklUIDogbG9naWNhbFdpZHRoIC0gcmVnaW9u
TG9naWNhbFdpZHRoOwogICAgICAgICAgICAgcmVnaW9uLT5zZXRSZW5kZXJCb3hSZWdpb25JbmZv
KHRoaXMsIGxvZ2ljYWxMZWZ0LCByZWdpb25Mb2dpY2FsV2lkdGgsIGZhbHNlKTsKQEAgLTI2Miw3
ICsyNTIsNyBAQCB2b2lkIFJlbmRlckZsb3dUaHJlYWQ6OmNvbXB1dGVMb2dpY2FsSGVpCiAgICAg
ICAgIGlmICghcmVnaW9uLT5pc1ZhbGlkKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAg
ICAgQVNTRVJUKCFyZWdpb24tPm5lZWRzTGF5b3V0KCkpOwotICAgICAgICBsb2dpY2FsSGVpZ2h0
ICs9IGlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkgPyByZWdpb24tPmNvbnRlbnRIZWlnaHQoKSA6
IHJlZ2lvbi0+Y29udGVudFdpZHRoKCk7CisgICAgICAgIGxvZ2ljYWxIZWlnaHQgKz0gcmVnaW9u
LT5sb2dpY2FsSGVpZ2h0Rm9yRmxvd1RocmVhZENvbnRlbnQoKTsKICAgICB9CiAKICAgICBzZXRM
b2dpY2FsSGVpZ2h0KGxvZ2ljYWxIZWlnaHQpOwpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlck11bHRpQ29sdW1uQmxvY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJNdWx0aUNvbHVtbkJsb2NrLmNwcAkocmV2aXNpb24gMTE4ODMy
KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck11bHRpQ29sdW1uQmxvY2suY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xMzcsOCArMTM3LDYgQEAgdm9pZCBSZW5kZXJNdWx0aUNvbHVt
bkJsb2NrOjplbnN1cmVDb2x1bQogICAgIGlmIChmbG93VGhyZWFkKCkgJiYgIWZpcnN0Q2hpbGQo
KS0+aXNSZW5kZXJNdWx0aUNvbHVtblNldCgpKSB7CiAgICAgICAgIFJlbmRlck11bHRpQ29sdW1u
U2V0KiBjb2x1bW5TZXQgPSBuZXcgKHJlbmRlckFyZW5hKCkpIFJlbmRlck11bHRpQ29sdW1uU2V0
KGRvY3VtZW50KCksIGZsb3dUaHJlYWQoKSk7CiAgICAgICAgIGNvbHVtblNldC0+c2V0U3R5bGUo
UmVuZGVyU3R5bGU6OmNyZWF0ZUFub255bW91c1N0eWxlV2l0aERpc3BsYXkoc3R5bGUoKSwgQkxP
Q0spKTsKLSAgICAgICAgY29sdW1uU2V0LT5zZXRDb2x1bW5XaWR0aEFuZENvdW50KGNvbHVtbldp
ZHRoKCksIGNvbHVtbkNvdW50KCkpOyAvLyBGSVhNRTogVGhpcyB3aWxsIGV2ZW50dWFsbHkgdmFy
eSBpZiB3ZSBhcmUgY29udGFpbmVkIGluc2lkZSByZWdpb25zLgotICAgICAgICBjb2x1bW5TZXQt
PnNldENvbHVtbkhlaWdodChjb2x1bW5IZWlnaHQoKSk7IC8vIEZJWE1FOiBPbmNlIHdlIG1ha2Ug
bW9yZSB0aGFuIG9uZSBjb2x1bW4gc2V0LCB0aGlzIHdpbGwgYmVjb21lIHZhcmlhYmxlLgogICAg
ICAgICBSZW5kZXJCbG9jazo6YWRkQ2hpbGQoY29sdW1uU2V0LCBmaXJzdENoaWxkKCkpOwogICAg
ICAgICBmbG93VGhyZWFkKCktPmFkZFJlZ2lvblRvVGhyZWFkKGNvbHVtblNldCk7CiAgICAgfQpJ
bmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck11bHRpQ29sdW1uQmxvY2suaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTXVsdGlDb2x1bW5C
bG9jay5oCShyZXZpc2lvbiAxMTg4MzIpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyTXVsdGlDb2x1bW5CbG9jay5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw2ICs0NCw4IEBAIHB1
YmxpYzoKICAgICB1bnNpZ25lZCBjb2x1bW5Db3VudCgpIGNvbnN0IHsgcmV0dXJuIG1fY29sdW1u
Q291bnQ7IH0KIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgaXNSZW5kZXJNdWx0aUNvbHVt
bkJsb2NrKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorICAgIAogICAgIHZpcnR1YWwgY29uc3Qg
Y2hhciogcmVuZGVyTmFtZSgpIGNvbnN0OwogCiAgICAgdmlydHVhbCBib29sIHJlY29tcHV0ZUxv
Z2ljYWxXaWR0aCgpOwpAQCAtNjQsNiArNjYsMjEgQEAgcHJpdmF0ZToKICAgICBMYXlvdXRVbml0
IG1fY29sdW1uSGVpZ2h0OyAvLyBUaGUgY3VycmVudCBjb2x1bW4gaGVpZ2h0LgogfTsKIAoraW5s
aW5lIFJlbmRlck11bHRpQ29sdW1uQmxvY2sqIHRvUmVuZGVyTXVsdGlDb2x1bW5CbG9jayhSZW5k
ZXJPYmplY3QqIG9iamVjdCkKK3sKKyAgICBBU1NFUlQoIW9iamVjdCB8fCBvYmplY3QtPmlzUmVu
ZGVyTXVsdGlDb2x1bW5CbG9jaygpKTsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8UmVuZGVyTXVs
dGlDb2x1bW5CbG9jayo+KG9iamVjdCk7Cit9CisKK2lubGluZSBjb25zdCBSZW5kZXJNdWx0aUNv
bHVtbkJsb2NrKiB0b1JlbmRlck11bHRpQ29sdW1uQmxvY2soY29uc3QgUmVuZGVyT2JqZWN0KiBv
YmplY3QpCit7CisgICAgQVNTRVJUKCFvYmplY3QgfHwgb2JqZWN0LT5pc1JlbmRlck11bHRpQ29s
dW1uQmxvY2soKSk7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IFJlbmRlck11bHRpQ29s
dW1uQmxvY2sqPihvYmplY3QpOworfQorCisvLyBUaGlzIHdpbGwgY2F0Y2ggYW55b25lIGRvaW5n
IGFuIHVubmVjZXNzYXJ5IGNhc3QuCit2b2lkIHRvUmVuZGVyTXVsdGlDb2x1bW5CbG9jayhjb25z
dCBSZW5kZXJNdWx0aUNvbHVtbkJsb2NrKik7CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAog
I2VuZGlmIC8vIFJlbmRlck11bHRpQ29sdW1uQmxvY2tfaApJbmRleDogU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlck11bHRpQ29sdW1uU2V0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTXVsdGlDb2x1bW5TZXQuY3BwCShyZXZpc2lvbiAxMTg4
MzIpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTXVsdGlDb2x1bW5TZXQuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNSw2ICsyNSw3IEBACiAKICNpbmNsdWRlICJjb25maWcuaCIK
ICNpbmNsdWRlICJSZW5kZXJNdWx0aUNvbHVtblNldC5oIgorI2luY2x1ZGUgIlJlbmRlck11bHRp
Q29sdW1uQmxvY2suaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0zNiw2ICszNywyOSBA
QCBSZW5kZXJNdWx0aUNvbHVtblNldDo6UmVuZGVyTXVsdGlDb2x1bW5TCiB7CiB9CiAKK3ZvaWQg
UmVuZGVyTXVsdGlDb2x1bW5TZXQ6OmNvbXB1dGVMb2dpY2FsV2lkdGgoKQoreworICAgIC8vIE91
ciBsb2dpY2FsIHdpZHRoIHN0YXJ0cyBvZmYgbWF0Y2hpbmcgdGhlIGNvbHVtbiBibG9jayBpdHNl
bGYuCisgICAgLy8gVGhpcyB3aWR0aCB3aWxsIGJlIGZpeGVkIHVwIGFmdGVyIHRoZSBmbG93IHRo
cmVhZCBsYXlzIG91dCBvbmNlIGl0IGlzIGRldGVybWluZWQgZXhhY3RseSBob3cgbWFueQorICAg
IC8vIGNvbHVtbnMgd2UgZW5kZWQgdXAgaG9sZGluZy4KKyAgICAvLyBGSVhNRTogV2hlbiB3ZSBh
ZGQgcmVnaW9ucyBzdXBwb3J0LCB3ZSdsbCBzdGFydCBpdCBvZmYgYXQgdGhlIHdpZHRoIG9mIHRo
ZSBtdWx0aS1jb2x1bW4KKyAgICAvLyBibG9jayBpbiB0aGF0IHBhcnRpY3VsYXIgcmVnaW9uLgor
ICAgIHNldExvZ2ljYWxXaWR0aChwYXJlbnRCb3goKS0+Y29udGVudExvZ2ljYWxXaWR0aCgpKTsK
KyAgICAKKyAgICBSZW5kZXJNdWx0aUNvbHVtbkJsb2NrKiBwYXJlbnRCbG9jayA9IHRvUmVuZGVy
TXVsdGlDb2x1bW5CbG9jayhwYXJlbnQoKSk7CisgICAgc2V0Q29sdW1uV2lkdGhBbmRDb3VudChw
YXJlbnRCbG9jay0+Y29sdW1uV2lkdGgoKSwgcGFyZW50QmxvY2stPmNvbHVtbkNvdW50KCkpOyAv
LyBGSVhNRTogVGhpcyB3aWxsIGV2ZW50dWFsbHkgdmFyeSBpZiB3ZSBhcmUgY29udGFpbmVkIGlu
c2lkZSByZWdpb25zLgorfQorCit2b2lkIFJlbmRlck11bHRpQ29sdW1uU2V0Ojpjb21wdXRlTG9n
aWNhbEhlaWdodCgpCit7CisgICAgLy8gTWFrZSBzdXJlIG91ciBjb2x1bW4gaGVpZ2h0IGlzIHVw
IHRvIGRhdGUuCisgICAgUmVuZGVyTXVsdGlDb2x1bW5CbG9jayogcGFyZW50QmxvY2sgPSB0b1Jl
bmRlck11bHRpQ29sdW1uQmxvY2socGFyZW50KCkpOworICAgIHNldENvbHVtbkhlaWdodChwYXJl
bnRCbG9jay0+Y29sdW1uSGVpZ2h0KCkpOyAvLyBGSVhNRTogT25jZSB3ZSBtYWtlIG1vcmUgdGhh
biBvbmUgY29sdW1uIHNldCwgdGhpcyB3aWxsIGJlY29tZSB2YXJpYWJsZS4KKyAgICAKKyAgICAv
LyBPdXIgbG9naWNhbCBoZWlnaHQgaXMgYWx3YXlzIGp1c3QgdGhlIGhlaWdodCBvZiBvdXIgY29s
dW1ucy4KKyAgICBzZXRMb2dpY2FsSGVpZ2h0KGNvbHVtbkhlaWdodCgpKTsKK30KKwogY29uc3Qg
Y2hhciogUmVuZGVyTXVsdGlDb2x1bW5TZXQ6OnJlbmRlck5hbWUoKSBjb25zdAogeyAgICAKICAg
ICByZXR1cm4gIlJlbmRlck11bHRpQ29sdW1uU2V0IjsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJNdWx0aUNvbHVtblNldC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJNdWx0aUNvbHVtblNldC5oCShyZXZpc2lvbiAxMTg4MzIpCisr
KyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTXVsdGlDb2x1bW5TZXQuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNTEsMTAgKzUxLDEwIEBAIHB1YmxpYzoKICAgICBMYXlvdXRVbml0IGNvbHVt
bldpZHRoKCkgY29uc3QgeyByZXR1cm4gbV9jb2x1bW5XaWR0aDsgfQogICAgIExheW91dFVuaXQg
Y29sdW1uSGVpZ2h0KCkgY29uc3QgeyByZXR1cm4gbV9jb2x1bW5IZWlnaHQ7IH0KIAotICAgIHZv
aWQgc2V0Q29sdW1uV2lkdGhBbmRDb3VudCh1bnNpZ25lZCBjb3VudCwgTGF5b3V0VW5pdCB3aWR0
aCkKKyAgICB2b2lkIHNldENvbHVtbldpZHRoQW5kQ291bnQoTGF5b3V0VW5pdCB3aWR0aCwgdW5z
aWduZWQgY291bnQpCiAgICAgewotICAgICAgICBtX2NvbHVtbkNvdW50ID0gY291bnQ7CiAgICAg
ICAgIG1fY29sdW1uV2lkdGggPSB3aWR0aDsKKyAgICAgICAgbV9jb2x1bW5Db3VudCA9IGNvdW50
OwogICAgIH0KICAgICB2b2lkIHNldENvbHVtbkhlaWdodChMYXlvdXRVbml0IGhlaWdodCkKICAg
ICB7CkBAIC02Miw2ICs2MiwxMiBAQCBwdWJsaWM6CiAgICAgfQogCiBwcml2YXRlOgorICAgIHZp
cnR1YWwgdm9pZCBjb21wdXRlTG9naWNhbFdpZHRoKCkgT1ZFUlJJREU7CisgICAgdmlydHVhbCB2
b2lkIGNvbXB1dGVMb2dpY2FsSGVpZ2h0KCkgT1ZFUlJJREU7CisKKyAgICB2aXJ0dWFsIExheW91
dFVuaXQgbG9naWNhbFdpZHRoRm9yRmxvd1RocmVhZENvbnRlbnQoKSBjb25zdCBPVkVSUklERSB7
IHJldHVybiBtX2NvbHVtbldpZHRoOyB9CisgICAgdmlydHVhbCBMYXlvdXRVbml0IGxvZ2ljYWxI
ZWlnaHRGb3JGbG93VGhyZWFkQ29udGVudCgpIGNvbnN0IE9WRVJSSURFIHsgcmV0dXJuIG1fY29s
dW1uSGVpZ2h0OyB9IC8vIEZJWE1FOiBXaWxsIGJlIHdyb25nIG9uY2Ugd2UgaGF2ZSBtdWx0aXBs
ZSBzZXRzLgorCiAgICAgdmlydHVhbCBjb25zdCBjaGFyKiByZW5kZXJOYW1lKCkgY29uc3Q7CiAg
ICAgCiAgICAgdW5zaWduZWQgbV9jb2x1bW5Db3VudDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJPYmplY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyT2JqZWN0LmgJKHJldmlzaW9uIDExODgwNikKKysrIFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAkod29ya2luZyBjb3B5KQpAQCAtMzYzLDYgKzM2Myw3
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgaXNSZW5kZXJGbG93VGhyZWFkKCkgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNSZW5kZXJOYW1lZEZsb3dUaHJl
YWQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIAorICAgIHZpcnR1YWwgYm9vbCBpc1Jl
bmRlck11bHRpQ29sdW1uQmxvY2soKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1
YWwgYm9vbCBpc1JlbmRlck11bHRpQ29sdW1uU2V0KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0K
IAogICAgIHZpcnR1YWwgYm9vbCBpc1JlbmRlclNjcm9sbGJhclBhcnQoKSBjb25zdCB7IHJldHVy
biBmYWxzZTsgfQpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlZ2lvbi5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlZ2lvbi5j
cHAJKHJldmlzaW9uIDExODgyNikKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJS
ZWdpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01Myw2ICs1MywxNiBAQCBSZW5kZXJSZWdpb246
OlJlbmRlclJlZ2lvbihOb2RlKiBub2RlLCBSCiB7CiB9CiAKK0xheW91dFVuaXQgUmVuZGVyUmVn
aW9uOjpsb2dpY2FsV2lkdGhGb3JGbG93VGhyZWFkQ29udGVudCgpIGNvbnN0Cit7CisgICAgcmV0
dXJuIG1fZmxvd1RocmVhZC0+aXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSA/IGNvbnRlbnRXaWR0
aCgpIDogY29udGVudEhlaWdodCgpOworfQorCitMYXlvdXRVbml0IFJlbmRlclJlZ2lvbjo6bG9n
aWNhbEhlaWdodEZvckZsb3dUaHJlYWRDb250ZW50KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9m
bG93VGhyZWFkLT5pc0hvcml6b250YWxXcml0aW5nTW9kZSgpID8gY29udGVudEhlaWdodCgpIDog
Y29udGVudFdpZHRoKCk7Cit9CisKIExheW91dFJlY3QgUmVuZGVyUmVnaW9uOjpyZWdpb25PdmVy
Zmxvd1JlY3QoKSBjb25zdAogewogICAgIC8vIEZJWE1FOiBXb3VsZCBsaWtlIHRvIGp1c3QgdXNl
IGhhc092ZXJmbG93Q2xpcCgpIGJ1dCB3ZSBhcmVuJ3QgYSBibG9jayB5ZXQuIFdoZW4gUmVuZGVy
UmVnaW9uIGlzIGVsaW1pbmF0ZWQgYW5kCkBAIC0xNDcsNyArMTU3LDEwIEBAIHZvaWQgUmVuZGVy
UmVnaW9uOjpsYXlvdXQoKQogewogICAgIFJlbmRlclJlcGxhY2VkOjpsYXlvdXQoKTsKICAgICBp
ZiAobV9mbG93VGhyZWFkICYmIGlzVmFsaWQoKSkgewotICAgICAgICBpZiAocmVnaW9uUmVjdCgp
LndpZHRoKCkgIT0gY29udGVudFdpZHRoKCkgfHwgcmVnaW9uUmVjdCgpLmhlaWdodCgpICE9IGNv
bnRlbnRIZWlnaHQoKSkKKyAgICAgICAgTGF5b3V0UmVjdCBvbGRSZWdpb25SZWN0KHJlZ2lvblJl
Y3QoKSk7CisgICAgICAgIGlmICghaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSkKKyAgICAgICAg
ICAgIG9sZFJlZ2lvblJlY3QgPSBvbGRSZWdpb25SZWN0LnRyYW5zcG9zZWRSZWN0KCk7CisgICAg
ICAgIGlmIChvbGRSZWdpb25SZWN0LndpZHRoKCkgIT0gbG9naWNhbFdpZHRoRm9yRmxvd1RocmVh
ZENvbnRlbnQoKSB8fCBvbGRSZWdpb25SZWN0LmhlaWdodCgpICE9IGxvZ2ljYWxIZWlnaHRGb3JG
bG93VGhyZWFkQ29udGVudCgpKQogICAgICAgICAgICAgbV9mbG93VGhyZWFkLT5pbnZhbGlkYXRl
UmVnaW9ucygpOwogICAgIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clJlZ2lvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJS
ZWdpb24uaAkocmV2aXNpb24gMTE4ODA2KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclJlZ2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC05NSw2ICs5NSwxMCBAQCBwdWJsaWM6CiAg
ICAgdm9pZCBzZXRSZWdpb25TdGF0ZShSZWdpb25TdGF0ZSByZWdpb25TdGF0ZSkgeyBtX3JlZ2lv
blN0YXRlID0gcmVnaW9uU3RhdGU7IH0KICAgICB2b2lkIHNldERpc3BhdGNoUmVnaW9uTGF5b3V0
VXBkYXRlRXZlbnQoYm9vbCB2YWx1ZSkgeyBtX2Rpc3BhdGNoUmVnaW9uTGF5b3V0VXBkYXRlRXZl
bnQgPSB2YWx1ZTsgfQogICAgIGJvb2wgc2hvdWxkRGlzcGF0Y2hSZWdpb25MYXlvdXRVcGRhdGVF
dmVudCgpIHsgcmV0dXJuIG1fZGlzcGF0Y2hSZWdpb25MYXlvdXRVcGRhdGVFdmVudDsgfQorICAg
IAorICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBsb2dpY2FsV2lkdGhGb3JGbG93VGhyZWFkQ29udGVu
dCgpIGNvbnN0OworICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBsb2dpY2FsSGVpZ2h0Rm9yRmxvd1Ro
cmVhZENvbnRlbnQoKSBjb25zdDsKKwogcHJpdmF0ZToKICAgICB2aXJ0dWFsIGNvbnN0IGNoYXIq
IHJlbmRlck5hbWUoKSBjb25zdCB7IHJldHVybiAiUmVuZGVyUmVnaW9uIjsgfQogCg==
</data>
<flag name="review"
          id="151525"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>