<?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>56717</bug_id>
          
          <creation_ts>2011-03-19 15:47:33 -0700</creation_ts>
          <short_desc>[Qt] Clean up redirection logic in QNetworkReplyHandler</short_desc>
          <delta_ts>2011-03-20 03:26:21 -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>Page Loading</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>Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>370177</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-03-19 15:47:33 -0700</bug_when>
    <thetext>SSIA</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370178</commentid>
    <comment_count>1</comment_count>
      <attachid>86273</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-03-19 15:51:29 -0700</bug_when>
    <thetext>Created attachment 86273
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370179</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-03-19 15:53:01 -0700</bug_when>
    <thetext>Attachment 86273 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/WebCor...&quot; exit_code: 1

Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp:420:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Total errors found: 1 in 3 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>370180</commentid>
    <comment_count>3</comment_count>
      <attachid>86273</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-03-19 15:57:11 -0700</bug_when>
    <thetext>Comment on attachment 86273
Proposed patch

Looks good, though it can be a bit hard to follow from looking at the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370181</commentid>
    <comment_count>4</comment_count>
      <attachid>86273</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-03-19 15:59:33 -0700</bug_when>
    <thetext>Comment on attachment 86273
Proposed patch

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

&gt;&gt; Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp:420
&gt;&gt; +    if (m_redirectionTries == 0) { // 10 or more redirections to the same url is considered infinite recursion
&gt; 
&gt; Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]

When 10 is defined as a static variable at the top, maybe it is bad to mention 10 here?

&gt; Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp:421
&gt; +        ResourceError error(newUrl.host(), 400 /*bad request*/,

Don&apos;t we have defines for 400 etc somewhere?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370206</commentid>
    <comment_count>5</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-03-20 03:26:21 -0700</bug_when>
    <thetext>Committed r81565: &lt;http://trac.webkit.org/changeset/81565&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86273</attachid>
            <date>2011-03-19 15:51:29 -0700</date>
            <delta_ts>2011-03-19 15:59:33 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>bug-56717.diff</filename>
            <type>text/plain</type>
            <size>10930</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1ZGM5MWMxLi5mZGM5NDkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjcg
QEAKIDIwMTEtMDMtMTkgIEFuZHJlYXMgS2xpbmcgIDxrbGluZ0B3ZWJraXQub3JnPgogCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gQ2xlYW4gdXAg
cmVkaXJlY3Rpb24gbG9naWMgaW4gUU5ldHdvcmtSZXBseUhhbmRsZXIKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU2NzE3CisKKyAgICAgICAgKiBwbGF0
Zm9ybS9uZXR3b3JrL3F0L1FOZXR3b3JrUmVwbHlIYW5kbGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlFOZXR3b3JrUmVwbHlIYW5kbGVyOjpRTmV0d29ya1JlcGx5SGFuZGxlcik6CisgICAgICAg
IFVzZSByZXNldFN0YXRlKCkgd2hlbiBjb25zdHJ1Y3RpbmcgUU5SSCBhcyB3ZWxsLgorCisgICAg
ICAgIChXZWJDb3JlOjpRTmV0d29ya1JlcGx5SGFuZGxlcjo6cmVzZXRTdGF0ZSk6CisgICAgICAg
IERlbGV0ZSAoZGVmZXJyZWQpIHRoZSBtX3JlcGx5IGlmIG9uZSBleGlzdHMgKG9ubHkgd2hlbiBy
ZWRpcmVjdGluZy4pCisKKyAgICAgICAgKFdlYkNvcmU6OlFOZXR3b3JrUmVwbHlIYW5kbGVyOjpm
aW5pc2gpOgorICAgICAgICBSZXR1cm4gZWFybHkgd2hlbiByZWRpcmVjdGluZy4KKworICAgICAg
ICAoV2ViQ29yZTo6UU5ldHdvcmtSZXBseUhhbmRsZXI6OnNlbmRSZXNwb25zZUlmTmVlZGVkKToK
KyAgICAgICAgKFdlYkNvcmU6OlFOZXR3b3JrUmVwbHlIYW5kbGVyOjpyZWRpcmVjdCk6CisgICAg
ICAgIE1vdmUgdGhlIHJlZGlyZWN0aW9uIGxvZ2ljIGZyb20gc2VuZFJlc3BvbnNlSWZOZWVkZWQo
KSBpbnRvIGEKKyAgICAgICAgc2VwYXJhdGUgcmVkaXJlY3QoKSBtZXRob2QuCisKKzIwMTEtMDMt
MTkgIEFuZHJlYXMgS2xpbmcgIDxrbGluZ0B3ZWJraXQub3JnPgorCiAgICAgICAgIFJldmlld2Vk
IGJ5IEJlbmphbWluIFBvdWxhaW4uCiAKICAgICAgICAgW1F0XSBSZW5hbWUgaWdub3JlSHR0cEVy
cm9yKCkgdG8gc2hvdWxkSWdub3JlSHR0cEVycm9yKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvcXQvUU5ldHdvcmtSZXBseUhhbmRsZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9xdC9RTmV0d29ya1JlcGx5SGFuZGxlci5jcHAKaW5k
ZXggNTMyZjBhYy4uYTAzYjUzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9xdC9RTmV0d29ya1JlcGx5SGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9xdC9RTmV0d29ya1JlcGx5SGFuZGxlci5jcHAKQEAgLTQ1LDcgKzQ1
LDcgQEAKIC8vIGZvciBub3csIHVzZSB0aGlzIGhhY2tpc2ggc29sdXRpb24gZm9yIHNldHRpbmcg
dGhlIGludGVybmFsIGF0dHJpYnV0ZS4KIGNvbnN0IFFOZXR3b3JrUmVxdWVzdDo6QXR0cmlidXRl
IGdTeW5jaHJvbm91c05ldHdvcmtSZXF1ZXN0QXR0cmlidXRlID0gc3RhdGljX2Nhc3Q8UU5ldHdv
cmtSZXF1ZXN0OjpBdHRyaWJ1dGU+KFFOZXR3b3JrUmVxdWVzdDo6SHR0cFBpcGVsaW5pbmdXYXNV
c2VkQXR0cmlidXRlICsgNyk7CiAKLXN0YXRpYyBjb25zdCBpbnQgZ01heFJlY3Vyc2lvbkxpbWl0
ID0gMTA7CitzdGF0aWMgY29uc3QgaW50IGdNYXhSZWRpcmVjdGlvbnMgPSAxMDsKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCkBAIC0xNzQsMTcgKzE3NCwxMiBAQCBRTmV0d29ya1JlcGx5SGFuZGxl
cjo6UU5ldHdvcmtSZXBseUhhbmRsZXIoUmVzb3VyY2VIYW5kbGUqIGhhbmRsZSwgTG9hZFR5cGUg
bG9hZAogICAgIDogUU9iamVjdCgwKQogICAgICwgbV9yZXBseSgwKQogICAgICwgbV9yZXNvdXJj
ZUhhbmRsZShoYW5kbGUpCi0gICAgLCBtX3JlZGlyZWN0ZWQoZmFsc2UpCi0gICAgLCBtX3Jlc3Bv
bnNlU2VudChmYWxzZSkKLSAgICAsIG1fcmVzcG9uc2VDb250YWluc0RhdGEoZmFsc2UpCiAgICAg
LCBtX2xvYWRUeXBlKGxvYWRUeXBlKQogICAgICwgbV9kZWZlcnJlZChkZWZlcnJlZCkKLSAgICAs
IG1faGFzU3RhcnRlZChmYWxzZSkKLSAgICAsIG1fY2FsbEZpbmlzaE9uUmVzdW1lKGZhbHNlKQot
ICAgICwgbV9jYWxsU2VuZFJlc3BvbnNlSWZOZWVkZWRPblJlc3VtZShmYWxzZSkKLSAgICAsIG1f
Y2FsbEZvcndhcmREYXRhT25SZXN1bWUoZmFsc2UpCi0gICAgLCBtX3JlZGlyZWN0aW9uVHJpZXMo
Z01heFJlY3Vyc2lvbkxpbWl0KQorICAgICwgbV9yZWRpcmVjdGlvblRyaWVzKGdNYXhSZWRpcmVj
dGlvbnMpCiB7CisgICAgcmVzZXRTdGF0ZSgpOworCiAgICAgY29uc3QgUmVzb3VyY2VSZXF1ZXN0
ICZyID0gbV9yZXNvdXJjZUhhbmRsZS0+Zmlyc3RSZXF1ZXN0KCk7CiAKICAgICBpZiAoci5odHRw
TWV0aG9kKCkgPT0gIkdFVCIpCkBAIC0yMTAsNiArMjA1LDIyIEBAIFFOZXR3b3JrUmVwbHlIYW5k
bGVyOjpRTmV0d29ya1JlcGx5SGFuZGxlcihSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBMb2FkVHlw
ZSBsb2FkCiAgICAgICAgIHN0YXJ0KCk7CiB9CiAKK3ZvaWQgUU5ldHdvcmtSZXBseUhhbmRsZXI6
OnJlc2V0U3RhdGUoKQoreworICAgIG1fcmVkaXJlY3RlZCA9IGZhbHNlOworICAgIG1fcmVzcG9u
c2VTZW50ID0gZmFsc2U7CisgICAgbV9yZXNwb25zZUNvbnRhaW5zRGF0YSA9IGZhbHNlOworICAg
IG1faGFzU3RhcnRlZCA9IGZhbHNlOworICAgIG1fY2FsbEZpbmlzaE9uUmVzdW1lID0gZmFsc2U7
CisgICAgbV9jYWxsU2VuZFJlc3BvbnNlSWZOZWVkZWRPblJlc3VtZSA9IGZhbHNlOworICAgIG1f
Y2FsbEZvcndhcmREYXRhT25SZXN1bWUgPSBmYWxzZTsKKworICAgIGlmIChtX3JlcGx5KSB7Cisg
ICAgICAgIG1fcmVwbHktPmRlbGV0ZUxhdGVyKCk7CisgICAgICAgIG1fcmVwbHkgPSAwOworICAg
IH0KK30KKwogdm9pZCBRTmV0d29ya1JlcGx5SGFuZGxlcjo6c2V0TG9hZGluZ0RlZmVycmVkKGJv
b2wgZGVmZXJyZWQpCiB7CiAgICAgbV9kZWZlcnJlZCA9IGRlZmVycmVkOwpAQCAtMjkyLDYgKzMw
Myw3IEBAIHZvaWQgUU5ldHdvcmtSZXBseUhhbmRsZXI6OmZpbmlzaCgpCiAKICAgICBpZiAoIW1f
cmVzb3VyY2VIYW5kbGUpCiAgICAgICAgIHJldHVybjsKKwogICAgIFJlc291cmNlSGFuZGxlQ2xp
ZW50KiBjbGllbnQgPSBtX3Jlc291cmNlSGFuZGxlLT5jbGllbnQoKTsKICAgICBpZiAoIWNsaWVu
dCkgewogICAgICAgICBtX3JlcGx5LT5kZWxldGVMYXRlcigpOwpAQCAtMjk5LDMyICszMTEsMzAg
QEAgdm9pZCBRTmV0d29ya1JlcGx5SGFuZGxlcjo6ZmluaXNoKCkKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAotICAgIGlmICghbV9yZWRpcmVjdGVkKSB7Ci0gICAgICAgIGlmICghbV9yZXBseS0+
ZXJyb3IoKSB8fCBzaG91bGRJZ25vcmVIdHRwRXJyb3IobV9yZXBseSwgbV9yZXNwb25zZUNvbnRh
aW5zRGF0YSkpCi0gICAgICAgICAgICBjbGllbnQtPmRpZEZpbmlzaExvYWRpbmcobV9yZXNvdXJj
ZUhhbmRsZSwgMCk7Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgUVVybCB1cmwgPSBtX3Jl
cGx5LT51cmwoKTsKLSAgICAgICAgICAgIGludCBodHRwU3RhdHVzQ29kZSA9IG1fcmVwbHktPmF0
dHJpYnV0ZShRTmV0d29ya1JlcXVlc3Q6Okh0dHBTdGF0dXNDb2RlQXR0cmlidXRlKS50b0ludCgp
OwotCi0gICAgICAgICAgICBpZiAoaHR0cFN0YXR1c0NvZGUpIHsKLSAgICAgICAgICAgICAgICBS
ZXNvdXJjZUVycm9yIGVycm9yKCJIVFRQIiwgaHR0cFN0YXR1c0NvZGUsIHVybC50b1N0cmluZygp
LCBtX3JlcGx5LT5hdHRyaWJ1dGUoUU5ldHdvcmtSZXF1ZXN0OjpIdHRwUmVhc29uUGhyYXNlQXR0
cmlidXRlKS50b1N0cmluZygpKTsKLSAgICAgICAgICAgICAgICBjbGllbnQtPmRpZEZhaWwobV9y
ZXNvdXJjZUhhbmRsZSwgZXJyb3IpOwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAg
ICAgICBSZXNvdXJjZUVycm9yIGVycm9yKCJRdE5ldHdvcmsiLCBtX3JlcGx5LT5lcnJvcigpLCB1
cmwudG9TdHJpbmcoKSwgbV9yZXBseS0+ZXJyb3JTdHJpbmcoKSk7Ci0gICAgICAgICAgICAgICAg
Y2xpZW50LT5kaWRGYWlsKG1fcmVzb3VyY2VIYW5kbGUsIGVycm9yKTsKLSAgICAgICAgICAgIH0K
LSAgICAgICAgfQotICAgICAgICBpZiAobV9yZXBseSkgewotICAgICAgICAgICAgbV9yZXBseS0+
ZGVsZXRlTGF0ZXIoKTsKLSAgICAgICAgICAgIG1fcmVwbHkgPSAwOwotICAgICAgICB9Ci0gICAg
fSBlbHNlIHsKLSAgICAgICAgaWYgKG1fcmVwbHkpIHsKLSAgICAgICAgICAgIG1fcmVwbHktPmRl
bGV0ZUxhdGVyKCk7Ci0gICAgICAgICAgICBtX3JlcGx5ID0gMDsKLSAgICAgICAgfQorICAgIGlm
IChtX3JlZGlyZWN0ZWQpIHsKICAgICAgICAgcmVzZXRTdGF0ZSgpOwogICAgICAgICBzdGFydCgp
OworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKCFtX3JlcGx5LT5lcnJvcigpIHx8
IHNob3VsZElnbm9yZUh0dHBFcnJvcihtX3JlcGx5LCBtX3Jlc3BvbnNlQ29udGFpbnNEYXRhKSkK
KyAgICAgICAgY2xpZW50LT5kaWRGaW5pc2hMb2FkaW5nKG1fcmVzb3VyY2VIYW5kbGUsIDApOwor
ICAgIGVsc2UgeworICAgICAgICBRVXJsIHVybCA9IG1fcmVwbHktPnVybCgpOworICAgICAgICBp
bnQgaHR0cFN0YXR1c0NvZGUgPSBtX3JlcGx5LT5hdHRyaWJ1dGUoUU5ldHdvcmtSZXF1ZXN0OjpI
dHRwU3RhdHVzQ29kZUF0dHJpYnV0ZSkudG9JbnQoKTsKKworICAgICAgICBpZiAoaHR0cFN0YXR1
c0NvZGUpIHsKKyAgICAgICAgICAgIFJlc291cmNlRXJyb3IgZXJyb3IoIkhUVFAiLCBodHRwU3Rh
dHVzQ29kZSwgdXJsLnRvU3RyaW5nKCksIG1fcmVwbHktPmF0dHJpYnV0ZShRTmV0d29ya1JlcXVl
c3Q6Okh0dHBSZWFzb25QaHJhc2VBdHRyaWJ1dGUpLnRvU3RyaW5nKCkpOworICAgICAgICAgICAg
Y2xpZW50LT5kaWRGYWlsKG1fcmVzb3VyY2VIYW5kbGUsIGVycm9yKTsKKyAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgIFJlc291cmNlRXJyb3IgZXJyb3IoIlF0TmV0d29yayIsIG1fcmVwbHkt
PmVycm9yKCksIHVybC50b1N0cmluZygpLCBtX3JlcGx5LT5lcnJvclN0cmluZygpKTsKKyAgICAg
ICAgICAgIGNsaWVudC0+ZGlkRmFpbChtX3Jlc291cmNlSGFuZGxlLCBlcnJvcik7CisgICAgICAg
IH0KKyAgICB9CisKKyAgICBpZiAobV9yZXBseSkgeworICAgICAgICBtX3JlcGx5LT5kZWxldGVM
YXRlcigpOworICAgICAgICBtX3JlcGx5ID0gMDsKICAgICB9CiB9CiAKQEAgLTM5MCw0NyArNDAw
LDU2IEBAIHZvaWQgUU5ldHdvcmtSZXBseUhhbmRsZXI6OnNlbmRSZXNwb25zZUlmTmVlZGVkKCkK
IAogICAgIFFVcmwgcmVkaXJlY3Rpb24gPSBtX3JlcGx5LT5hdHRyaWJ1dGUoUU5ldHdvcmtSZXF1
ZXN0OjpSZWRpcmVjdGlvblRhcmdldEF0dHJpYnV0ZSkudG9VcmwoKTsKICAgICBpZiAocmVkaXJl
Y3Rpb24uaXNWYWxpZCgpKSB7Ci0gICAgICAgIFFVcmwgbmV3VXJsID0gbV9yZXBseS0+dXJsKCku
cmVzb2x2ZWQocmVkaXJlY3Rpb24pOworICAgICAgICByZWRpcmVjdChyZXNwb25zZSwgcmVkaXJl
Y3Rpb24pOworICAgICAgICByZXR1cm47CisgICAgfQogCi0gICAgICAgIG1fcmVkaXJlY3Rpb25U
cmllcy0tOwotICAgICAgICBpZiAobV9yZWRpcmVjdGlvblRyaWVzID09IDApIHsgLy8gMTAgb3Ig
bW9yZSByZWRpcmVjdGlvbnMgdG8gdGhlIHNhbWUgdXJsIGlzIGNvbnNpZGVyZWQgaW5maW5pdGUg
cmVjdXJzaW9uCi0gICAgICAgICAgICBSZXNvdXJjZUVycm9yIGVycm9yKG5ld1VybC5ob3N0KCks
IDQwMCAvKmJhZCByZXF1ZXN0Ki8sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5l
d1VybC50b1N0cmluZygpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRQ29yZUFw
cGxpY2F0aW9uOjp0cmFuc2xhdGUoIlFXZWJQYWdlIiwgIlJlZGlyZWN0aW9uIGxpbWl0IHJlYWNo
ZWQiKSk7Ci0gICAgICAgICAgICBjbGllbnQtPmRpZEZhaWwobV9yZXNvdXJjZUhhbmRsZSwgZXJy
b3IpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9Ci0gICAgICAgIG1fcmVkaXJlY3Rl
ZCA9IHRydWU7CisgICAgY2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2UobV9yZXNvdXJjZUhhbmRs
ZSwgcmVzcG9uc2UpOworfQogCit2b2lkIFFOZXR3b3JrUmVwbHlIYW5kbGVyOjpyZWRpcmVjdChS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgUVVybCYgcmVkaXJlY3Rpb24pCit7Cisg
ICAgUVVybCBuZXdVcmwgPSBtX3JlcGx5LT51cmwoKS5yZXNvbHZlZChyZWRpcmVjdGlvbik7CiAK
LSAgICAgICAgLy8gIFN0YXR1cyBDb2RlIDMwMSAoTW92ZWQgUGVybWFuZW50bHkpLCAzMDIgKE1v
dmVkIFRlbXBvcmFyaWx5KSwgMzAzIChTZWUgT3RoZXIpOgotICAgICAgICAvLyAgICAtIElmIG9y
aWdpbmFsIHJlcXVlc3QgaXMgUE9TVCBjb252ZXJ0IHRvIEdFVCBhbmQgcmVkaXJlY3QgYXV0b21h
dGljYWxseQotICAgICAgICAvLyAgU3RhdHVzIENvZGUgMzA3IChUZW1wb3JhcnkgUmVkaXJlY3Qp
IGFuZCBhbGwgb3RoZXIgcmVkaXJlY3Qgc3RhdHVzIGNvZGVzOgotICAgICAgICAvLyAgICAtIFVz
ZSB0aGUgSFRUUCBtZXRob2QgZnJvbSB0aGUgcHJldmlvdXMgcmVxdWVzdAotICAgICAgICBpZiAo
KHN0YXR1c0NvZGUgPj0gMzAxICYmIHN0YXR1c0NvZGUgPD0gMzAzKSAmJiBtX3Jlc291cmNlSGFu
ZGxlLT5maXJzdFJlcXVlc3QoKS5odHRwTWV0aG9kKCkgPT0gIlBPU1QiKQotICAgICAgICAgICAg
bV9tZXRob2QgPSBRTmV0d29ya0FjY2Vzc01hbmFnZXI6OkdldE9wZXJhdGlvbjsKKyAgICBSZXNv
dXJjZUhhbmRsZUNsaWVudCogY2xpZW50ID0gbV9yZXNvdXJjZUhhbmRsZS0+Y2xpZW50KCk7Cisg
ICAgQVNTRVJUKGNsaWVudCk7CiAKLSAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IG5ld1JlcXVlc3Qg
PSBtX3Jlc291cmNlSGFuZGxlLT5maXJzdFJlcXVlc3QoKTsKLSAgICAgICAgbmV3UmVxdWVzdC5z
ZXRIVFRQTWV0aG9kKGh0dHBNZXRob2QoKSk7Ci0gICAgICAgIG5ld1JlcXVlc3Quc2V0VVJMKG5l
d1VybCk7CisgICAgaW50IHN0YXR1c0NvZGUgPSBtX3JlcGx5LT5hdHRyaWJ1dGUoUU5ldHdvcmtS
ZXF1ZXN0OjpIdHRwU3RhdHVzQ29kZUF0dHJpYnV0ZSkudG9JbnQoKTsKIAotICAgICAgICAvLyBT
aG91bGQgbm90IHNldCBSZWZlcmVyIGFmdGVyIGEgcmVkaXJlY3QgZnJvbSBhIHNlY3VyZSByZXNv
dXJjZSB0byBub24tc2VjdXJlIG9uZS4KLSAgICAgICAgaWYgKCFuZXdSZXF1ZXN0LnVybCgpLnBy
b3RvY29sSXMoImh0dHBzIikgJiYgcHJvdG9jb2xJcyhuZXdSZXF1ZXN0Lmh0dHBSZWZlcnJlcigp
LCAiaHR0cHMiKSkKLSAgICAgICAgICAgIG5ld1JlcXVlc3QuY2xlYXJIVFRQUmVmZXJyZXIoKTsK
KyAgICBtX3JlZGlyZWN0aW9uVHJpZXMtLTsKKyAgICBpZiAobV9yZWRpcmVjdGlvblRyaWVzID09
IDApIHsgLy8gMTAgb3IgbW9yZSByZWRpcmVjdGlvbnMgdG8gdGhlIHNhbWUgdXJsIGlzIGNvbnNp
ZGVyZWQgaW5maW5pdGUgcmVjdXJzaW9uCisgICAgICAgIFJlc291cmNlRXJyb3IgZXJyb3IobmV3
VXJsLmhvc3QoKSwgNDAwIC8qYmFkIHJlcXVlc3QqLywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBuZXdVcmwudG9TdHJpbmcoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBRQ29y
ZUFwcGxpY2F0aW9uOjp0cmFuc2xhdGUoIlFXZWJQYWdlIiwgIlJlZGlyZWN0aW9uIGxpbWl0IHJl
YWNoZWQiKSk7CisgICAgICAgIGNsaWVudC0+ZGlkRmFpbChtX3Jlc291cmNlSGFuZGxlLCBlcnJv
cik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgbV9yZWRpcmVjdGVkID0gdHJ1ZTsKIAot
ICAgICAgICBjbGllbnQtPndpbGxTZW5kUmVxdWVzdChtX3Jlc291cmNlSGFuZGxlLCBuZXdSZXF1
ZXN0LCByZXNwb25zZSk7Ci0gICAgICAgIGlmICghbV9yZXNvdXJjZUhhbmRsZSkgLy8gbmV0d29y
ayBlcnJvciBkaWQgY2FuY2VsIHRoZSByZXF1ZXN0Ci0gICAgICAgICAgICByZXR1cm47CisgICAg
Ly8gIFN0YXR1cyBDb2RlIDMwMSAoTW92ZWQgUGVybWFuZW50bHkpLCAzMDIgKE1vdmVkIFRlbXBv
cmFyaWx5KSwgMzAzIChTZWUgT3RoZXIpOgorICAgIC8vICAgIC0gSWYgb3JpZ2luYWwgcmVxdWVz
dCBpcyBQT1NUIGNvbnZlcnQgdG8gR0VUIGFuZCByZWRpcmVjdCBhdXRvbWF0aWNhbGx5CisgICAg
Ly8gIFN0YXR1cyBDb2RlIDMwNyAoVGVtcG9yYXJ5IFJlZGlyZWN0KSBhbmQgYWxsIG90aGVyIHJl
ZGlyZWN0IHN0YXR1cyBjb2RlczoKKyAgICAvLyAgICAtIFVzZSB0aGUgSFRUUCBtZXRob2QgZnJv
bSB0aGUgcHJldmlvdXMgcmVxdWVzdAorICAgIGlmICgoc3RhdHVzQ29kZSA+PSAzMDEgJiYgc3Rh
dHVzQ29kZSA8PSAzMDMpICYmIG1fcmVzb3VyY2VIYW5kbGUtPmZpcnN0UmVxdWVzdCgpLmh0dHBN
ZXRob2QoKSA9PSAiUE9TVCIpCisgICAgICAgIG1fbWV0aG9kID0gUU5ldHdvcmtBY2Nlc3NNYW5h
Z2VyOjpHZXRPcGVyYXRpb247CiAKLSAgICAgICAgUU9iamVjdCogb3JpZ2luYXRpbmdPYmplY3Qg
PSAwOwotICAgICAgICBpZiAobV9yZXNvdXJjZUhhbmRsZS0+Z2V0SW50ZXJuYWwoKS0+bV9jb250
ZXh0KQotICAgICAgICAgICAgb3JpZ2luYXRpbmdPYmplY3QgPSBtX3Jlc291cmNlSGFuZGxlLT5n
ZXRJbnRlcm5hbCgpLT5tX2NvbnRleHQtPm9yaWdpbmF0aW5nT2JqZWN0KCk7CisgICAgUmVzb3Vy
Y2VSZXF1ZXN0IG5ld1JlcXVlc3QgPSBtX3Jlc291cmNlSGFuZGxlLT5maXJzdFJlcXVlc3QoKTsK
KyAgICBuZXdSZXF1ZXN0LnNldEhUVFBNZXRob2QoaHR0cE1ldGhvZCgpKTsKKyAgICBuZXdSZXF1
ZXN0LnNldFVSTChuZXdVcmwpOwogCi0gICAgICAgIG1fcmVxdWVzdCA9IG5ld1JlcXVlc3QudG9O
ZXR3b3JrUmVxdWVzdChvcmlnaW5hdGluZ09iamVjdCk7CisgICAgLy8gU2hvdWxkIG5vdCBzZXQg
UmVmZXJlciBhZnRlciBhIHJlZGlyZWN0IGZyb20gYSBzZWN1cmUgcmVzb3VyY2UgdG8gbm9uLXNl
Y3VyZSBvbmUuCisgICAgaWYgKCFuZXdSZXF1ZXN0LnVybCgpLnByb3RvY29sSXMoImh0dHBzIikg
JiYgcHJvdG9jb2xJcyhuZXdSZXF1ZXN0Lmh0dHBSZWZlcnJlcigpLCAiaHR0cHMiKSkKKyAgICAg
ICAgbmV3UmVxdWVzdC5jbGVhckhUVFBSZWZlcnJlcigpOworCisgICAgY2xpZW50LT53aWxsU2Vu
ZFJlcXVlc3QobV9yZXNvdXJjZUhhbmRsZSwgbmV3UmVxdWVzdCwgcmVzcG9uc2UpOworICAgIGlm
ICghbV9yZXNvdXJjZUhhbmRsZSkgLy8gbmV0d29yayBlcnJvciBkaWQgY2FuY2VsIHRoZSByZXF1
ZXN0CiAgICAgICAgIHJldHVybjsKLSAgICB9CiAKLSAgICBjbGllbnQtPmRpZFJlY2VpdmVSZXNw
b25zZShtX3Jlc291cmNlSGFuZGxlLCByZXNwb25zZSk7CisgICAgUU9iamVjdCogb3JpZ2luYXRp
bmdPYmplY3QgPSAwOworICAgIGlmIChtX3Jlc291cmNlSGFuZGxlLT5nZXRJbnRlcm5hbCgpLT5t
X2NvbnRleHQpCisgICAgICAgIG9yaWdpbmF0aW5nT2JqZWN0ID0gbV9yZXNvdXJjZUhhbmRsZS0+
Z2V0SW50ZXJuYWwoKS0+bV9jb250ZXh0LT5vcmlnaW5hdGluZ09iamVjdCgpOworCisgICAgbV9y
ZXF1ZXN0ID0gbmV3UmVxdWVzdC50b05ldHdvcmtSZXF1ZXN0KG9yaWdpbmF0aW5nT2JqZWN0KTsK
IH0KIAogdm9pZCBRTmV0d29ya1JlcGx5SGFuZGxlcjo6Zm9yd2FyZERhdGEoKQpAQCAtNTY2LDE3
ICs1ODUsNiBAQCB2b2lkIFFOZXR3b3JrUmVwbHlIYW5kbGVyOjpzdGFydCgpCiAgICAgICAgIGNv
bm5lY3QobV9yZXBseSwgU0lHTkFMKHVwbG9hZFByb2dyZXNzKHFpbnQ2NCwgcWludDY0KSksIHRo
aXMsIFNMT1QodXBsb2FkUHJvZ3Jlc3MocWludDY0LCBxaW50NjQpKSk7CiB9CiAKLXZvaWQgUU5l
dHdvcmtSZXBseUhhbmRsZXI6OnJlc2V0U3RhdGUoKQotewotICAgIG1fcmVkaXJlY3RlZCA9IGZh
bHNlOwotICAgIG1fcmVzcG9uc2VTZW50ID0gZmFsc2U7Ci0gICAgbV9yZXNwb25zZUNvbnRhaW5z
RGF0YSA9IGZhbHNlOwotICAgIG1faGFzU3RhcnRlZCA9IGZhbHNlOwotICAgIG1fY2FsbEZpbmlz
aE9uUmVzdW1lID0gZmFsc2U7Ci0gICAgbV9jYWxsU2VuZFJlc3BvbnNlSWZOZWVkZWRPblJlc3Vt
ZSA9IGZhbHNlOwotICAgIG1fY2FsbEZvcndhcmREYXRhT25SZXN1bWUgPSBmYWxzZTsKLX0KLQog
fQogCiAjaW5jbHVkZSAibW9jX1FOZXR3b3JrUmVwbHlIYW5kbGVyLmNwcCIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvcXQvUU5ldHdvcmtSZXBseUhhbmRsZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvcXQvUU5ldHdvcmtSZXBseUhhbmRs
ZXIuaAppbmRleCA4MzI2YmMxLi5hNzI3NWNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL3F0L1FOZXR3b3JrUmVwbHlIYW5kbGVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9xdC9RTmV0d29ya1JlcGx5SGFuZGxlci5oCkBAIC0zNCw2
ICszNCw3IEBAIFFUX0VORF9OQU1FU1BBQ0UKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3Mg
UmVzb3VyY2VIYW5kbGU7CitjbGFzcyBSZXNvdXJjZVJlc3BvbnNlOwogCiBjbGFzcyBRTmV0d29y
a1JlcGx5SGFuZGxlciA6IHB1YmxpYyBRT2JqZWN0CiB7CkBAIC02NCw2ICs2NSw3IEBAIHByaXZh
dGU6CiAgICAgdm9pZCByZXNldFN0YXRlKCk7CiAgICAgU3RyaW5nIGh0dHBNZXRob2QoKSBjb25z
dDsKICAgICB2b2lkIHJlc3VtZURlZmVycmVkTG9hZCgpOworICAgIHZvaWQgcmVkaXJlY3QoUmVz
b3VyY2VSZXNwb25zZSYsIGNvbnN0IFFVcmwmKTsKIAogICAgIFFOZXR3b3JrUmVwbHkqIG1fcmVw
bHk7CiAgICAgUmVzb3VyY2VIYW5kbGUqIG1fcmVzb3VyY2VIYW5kbGU7Cg==
</data>
<flag name="review"
          id="78510"
          type_id="1"
          status="+"
          setter="kenneth"
    />
          </attachment>
      

    </bug>

</bugzilla>