<?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>10907</bug_id>
          
          <creation_ts>2006-09-17 16:54:34 -0700</creation_ts>
          <short_desc>REGRESSION: New Icon Loaders don&apos;t handle certain non-server-root URLs correctly</short_desc>
          <delta_ts>2006-09-18 11:09:11 -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>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</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="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>55773</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2006-09-17 16:54:34 -0700</bug_when>
    <thetext>Since switching over the WebCore Icon Loader, certain URLs not at the root of a server don&apos;t get their default icon figured out correctly.

To reproduce -
1. Wipe your ~/Library/Safari/Icons directly to start fresh
2. Open ToT
3. Go to www.google.com
4. Note the icon is downloaded and displayed
5. Search for &quot;hello world&quot;
6. You&apos;re taking to the URL &quot;http://www.google.com/search?hl=en&amp;q=hello+world&amp;btnG=Google+Search&quot;
7. Note the search results page doesn&apos;t have the Google favicon

I can confirm by inspecting an icon.db file with sqlite3 that the reason this occurs is because the search result page doesn&apos;t have an icon &lt;link&gt; tag but rather relies on the default favicon.ico.  Problem here is we don&apos;t properly construct the default favicon URL in Frame::iconURL().  The constructed URL, as found in the icon.db file, is -
http://www.google.com/favicon.ico?hl=en&amp;q=hello+world&amp;btnG=Google+Search

It seems the post data remains appended to the URL, but there could also be other artifacts that remain in other cases.

Fix is coming shortly...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55802</commentid>
    <comment_count>1</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2006-09-18 00:13:33 -0700</bug_when>
    <thetext>Here&apos;s what I found -
- Constructing the iconURL by copying the Frame&apos;s Doc URL then replacing the path component alone wasn&apos;t working due to intricacies in KURL.  Found a better way to do this
- The first site you visited on a server would get its icon.  The 2nd and later wouldn&apos;t.  We never got to the stage where we&apos;d map the pageURL to the iconURL unless we kicked off an icon load.  Change it so we make this mapping no matter what once a frame is finished loading.  Indeed, this was the behavior in the old WebKit icon database as well</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55803</commentid>
    <comment_count>2</comment_count>
      <attachid>10622</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2006-09-18 00:20:40 -0700</bug_when>
    <thetext>Created attachment 10622
Small changes go a long way</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55833</commentid>
    <comment_count>3</comment_count>
      <attachid>10622</attachid>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-09-18 09:49:05 -0700</bug_when>
    <thetext>Comment on attachment 10622
Small changes go a long way

typo in comment: &quot;it&apos;s url(s)&quot; should be &quot;its&quot;

+    // FIXME - Need to be able to do the following platform independently
+#if PLATFORM(MAC)
+    FrameMac* frameMac = Mac(this);
+    iconDatabase-&gt;setIconURLForPageURL(icon.url(), frameMac-&gt;originalRequestURL().url());
+#endif
+}

I think the right way to do this is to override this method in FrameMac and call through to super before handling the frameMac-&gt;originalRequestURL case. Then other platforms can do the same thing if they are also keeping track of the original request URL some other way.

Please either make this change or explain why it isn&apos;t the right approach. The rest of the patch looks fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55836</commentid>
    <comment_count>4</comment_count>
      <attachid>10629</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2006-09-18 10:45:33 -0700</bug_when>
    <thetext>Created attachment 10629
This is alot better, I think</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55837</commentid>
    <comment_count>5</comment_count>
      <attachid>10629</attachid>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-09-18 10:52:12 -0700</bug_when>
    <thetext>Comment on attachment 10629
This is alot better, I think

Much nicer, r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55838</commentid>
    <comment_count>6</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2006-09-18 11:09:11 -0700</bug_when>
    <thetext>Commited in r16423</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>10622</attachid>
            <date>2006-09-18 00:20:40 -0700</date>
            <delta_ts>2006-09-18 10:45:33 -0700</delta_ts>
            <desc>Small changes go a long way</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>4512</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">SW5kZXg6IENoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBDaGFuZ2VMb2cJKHJldmlzaW9uIDE2NDE5
KQorKysgQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTggQEAKKzIwMDYtMDkt
MTggIEJyYWR5IEVpZHNvbiA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cDovL2J1Z3ppbGxhLm9wZW5kYXJ3aW4u
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMDkwNworICAgICAgICBSRUdSRVNTSU9OOiBOZXcgSWNvbiBM
b2FkZXJzIGRvbid0IGhhbmRsZSBjZXJ0YWluIG5vbi1zZXJ2ZXItcm9vdCBVUkxzIGNvcnJlY3Rs
eQorCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkxvYWRlci5jcHA6CisgICAgICAgIChJY29u
TG9hZGVyOjpyZWNlaXZlZEFsbERhdGEpOiBNb3ZlZCB0aGUgInBhZ2VVUkwgdG8gaWNvblVSTCBt
YXBwaW5nIGxvZ2ljIiB0byBGcmFtZTo6Y29tbWl0SWNvblVSTFRvSWNvbkRhdGFiYXNlKCkKKyAg
ICAgICAgKiBwYWdlL0ZyYW1lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lOjppY29uVVJM
KTogQ29uc3RydWN0IHRoZSBpY29uIFVSTCBmcm9tICpvbmx5KiB0aGUgcHJvdG9jb2wgYW5kIGhv
c3Qgb2YgdGhlIGZyYW1lJ3MgdXJsLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmVuZElmTm90
TG9hZGluZyk6IENhbGwgY29tbWl0SWNvblVSTFRvSWNvbkRhdGFiYXNlKCkgaWYgd2UncmUgbm90
IGtpY2tpbmcgb2ZmIGFuIGljb24gbG9hZAorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmNvbW1p
dEljb25VUkxUb0ljb25EYXRhYmFzZSk6IE1hcCB0aGUgY29tcGxldGVkIGRvYydzIHBhZ2VVUkwg
dG8gdGhlIGljb25VUkwKKyAgICAgICAgKiBwYWdlL0ZyYW1lLmg6CisKIDIwMDYtMDktMTcgIEVy
aWMgU2VpZGVsICA8ZXJpY0Blc2VpZGVsLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBhcC4K
SW5kZXg6IGxvYWRlci9pY29uL0ljb25Mb2FkZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGxvYWRlci9p
Y29uL0ljb25Mb2FkZXIuY3BwCShyZXZpc2lvbiAxNjQxOSkKKysrIGxvYWRlci9pY29uL0ljb25M
b2FkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDgsNyArMTA4LDcgQEAKICAgICAgICAgc2l6
ZSA9IG1fZGF0YS5zaXplKCk7CiAgICAgfQogICAgICAgICAKLSAgICBJY29uRGF0YWJhc2UgKiBp
Y29uRGF0YWJhc2UgPSBJY29uRGF0YWJhc2U6OnNoYXJlZEljb25EYXRhYmFzZSgpOworICAgIElj
b25EYXRhYmFzZSogaWNvbkRhdGFiYXNlID0gSWNvbkRhdGFiYXNlOjpzaGFyZWRJY29uRGF0YWJh
c2UoKTsKICAgICBBU1NFUlQoaWNvbkRhdGFiYXNlKTsKICAgICAKICAgICBLVVJMIGljb25VUkwo
cmVzb3VyY2VMb2FkZXItPnVybCgpKTsKQEAgLTExOCwxNiArMTE4LDEwIEBACiAgICAgZWxzZQog
ICAgICAgICBpY29uRGF0YWJhc2UtPnNldEhhdmVOb0ljb25Gb3JJY29uVVJMKGljb25VUkwudXJs
KCkpOwogICAgICAgICAKLSAgICAvLyBXZSBzZXQgYm90aCB0aGUgb3JpZ2luYWwgcmVxdWVzdCBV
UkwgYW5kIHRoZSBmaW5hbCBVUkwgYXMgdGhlIFBhZ2VVUkxzIGFzIGRpZmZlcmVudCBwYXJ0cwot
ICAgIC8vIG9mIHRoZSBhcHAgdGVuZCB0byB3YW50IHRvIHJldGFpbiBib3RoCi0gICAgaWNvbkRh
dGFiYXNlLT5zZXRJY29uVVJMRm9yUGFnZVVSTChpY29uVVJMLnVybCgpLCBtX2ZyYW1lLT51cmwo
KS51cmwoKSk7Ci0KLSAgICAvLyBGSVhNRSAtIE5lZWQgdG8gYmUgYWJsZSB0byBkbyB0aGUgZm9s
bG93aW5nIHBsYXRmb3JtIGluZGVwZW5kZW50bHkKLSNpZiBQTEFURk9STShNQUMpCi0gICAgRnJh
bWVNYWMqIGZyYW1lTWFjID0gTWFjKG1fZnJhbWUpOwotICAgIGljb25EYXRhYmFzZS0+c2V0SWNv
blVSTEZvclBhZ2VVUkwoaWNvblVSTC51cmwoKSwgZnJhbWVNYWMtPm9yaWdpbmFsUmVxdWVzdFVS
TCgpLnVybCgpKTsKLSNlbmRpZgotCisgICAgLy8gVGVsbCB0aGUgRnJhbWUgdG8gbWFwIGl0J3Mg
dXJsKHMpIHRvIGl0cyBpY29uVVJMIGluIHRoZSBkYXRhYmFzZQorICAgIG1fZnJhbWUtPmNvbW1p
dEljb25VUkxUb0ljb25EYXRhYmFzZSgpOworICAgIAorICAgIC8vIFNlbmQgdGhlIG5vdGlmaWNh
dGlvbiB0byB0aGUgYXBwIHRoYXQgdGhpcyBpY29uIGlzIGZpbmlzaGVkIGxvYWRpbmcKICAgICBu
b3RpZnlJY29uQ2hhbmdlZChpY29uVVJMKTsKIAogICAgIC8vIFJlc291cmNlTG9hZGVycyBkZWxl
dGUgdGhlbXNlbHZlcyBhZnRlciB0aGV5IGRlbGl2ZXIgdGhlaXIgbGFzdCBkYXRhLCBzbyB3ZSBj
YW4ganVzdCBmb3JnZXQgYWJvdXQgaXQKSW5kZXg6IHBhZ2UvRnJhbWUuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBwYWdlL0ZyYW1lLmgJKHJldmlzaW9uIDE2NDE5KQorKysgcGFnZS9GcmFtZS5oCSh3b3JraW5n
IGNvcHkpCkBAIC0xMDgsNiArMTA4LDcgQEAKIAogICBLVVJMIGljb25VUkwoKTsKICAgdm9pZCBz
ZXRJY29uVVJMKGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIHR5cGUpOworICB2b2lk
IGNvbW1pdEljb25VUkxUb0ljb25EYXRhYmFzZSgpOwogICAKICAgUGFnZSogcGFnZSgpIGNvbnN0
OwogICB2b2lkIHBhZ2VEZXN0cm95ZWQoKTsKSW5kZXg6IHBhZ2UvRnJhbWUuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIHBhZ2UvRnJhbWUuY3BwCShyZXZpc2lvbiAxNjQxOSkKKysrIHBhZ2UvRnJhbWUuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yMzgsNyArMjM4LDkgQEAKICAgICBpZiAoZC0+bV91cmwucHJv
dG9jb2woKSAhPSAiaHR0cCIgJiYgZC0+bV91cmwucHJvdG9jb2woKSAhPSAiaHR0cHMiKQogICAg
ICAgICByZXR1cm4gIiI7CiAgICAgICAgIAotICAgIEtVUkwgdXJsID0gZC0+bV91cmw7CisgICAg
S1VSTCB1cmw7CisgICAgdXJsLnNldFByb3RvY29sKGQtPm1fdXJsLnByb3RvY29sKCkpOworICAg
IHVybC5zZXRIb3N0KGQtPm1fdXJsLmhvc3QoKSk7CiAgICAgdXJsLnNldFBhdGgoIi9mYXZpY29u
LmljbyIpOwogICAgIHJldHVybiB1cmw7CiB9CkBAIC03NzcsMTYgKzc3OSwzNCBAQAogICAgIFN0
cmluZyB1cmwoaWNvblVSTCgpLnVybCgpKTsKICAgICBpZiAodXJsLmlzRW1wdHkoKSkKICAgICAg
ICAgcmV0dXJuOwotICAgICAgICAKKyAgICAKICAgICBJY29uRGF0YWJhc2UqIHNoYXJlZEljb25E
YXRhYmFzZSA9IEljb25EYXRhYmFzZTo6c2hhcmVkSWNvbkRhdGFiYXNlKCk7Ci0gICAgaWYgKHNo
YXJlZEljb25EYXRhYmFzZS0+aGFzRW50cnlGb3JJY29uVVJMKHVybCkgJiYgIXNoYXJlZEljb25E
YXRhYmFzZS0+aXNJY29uRXhwaXJlZEZvckljb25VUkwodXJsKSkKKyAgICAvLyBJZiB3ZSBhbHJl
YWR5IGhhdmUgYW4gdW5leHBpcmVkIGljb24sIHdlIHdvbid0IGtpY2sgb2ZmIGEgbG9hZCBidXQg
d2UgKndpbGwqIG1hcCB0aGUgYXBwcm9wcmlhdGUgVVJMcyB0byBpdAorICAgIGlmIChzaGFyZWRJ
Y29uRGF0YWJhc2UtPmhhc0VudHJ5Rm9ySWNvblVSTCh1cmwpICYmICFzaGFyZWRJY29uRGF0YWJh
c2UtPmlzSWNvbkV4cGlyZWRGb3JJY29uVVJMKHVybCkpIHsKKyAgICAgICAgY29tbWl0SWNvblVS
TFRvSWNvbkRhdGFiYXNlKCk7CiAgICAgICAgIHJldHVybjsKKyAgICB9CiAgICAgCiAgICAgaWYg
KCFkLT5tX2ljb25Mb2FkZXIpCiAgICAgICAgIGQtPm1faWNvbkxvYWRlciA9IEljb25Mb2FkZXI6
OmNyZWF0ZUZvckZyYW1lKHRoaXMpOwogICAgIGQtPm1faWNvbkxvYWRlci0+c3RhcnRMb2FkaW5n
KCk7CiB9CiAKK3ZvaWQgRnJhbWU6OmNvbW1pdEljb25VUkxUb0ljb25EYXRhYmFzZSgpCit7Cisg
ICAgS1VSTCBpY29uID0gaWNvblVSTCgpOworICAgIAorICAgIEljb25EYXRhYmFzZSogaWNvbkRh
dGFiYXNlID0gSWNvbkRhdGFiYXNlOjpzaGFyZWRJY29uRGF0YWJhc2UoKTsKKyAgICBBU1NFUlQo
aWNvbkRhdGFiYXNlKTsKKyAgICBpY29uRGF0YWJhc2UtPnNldEljb25VUkxGb3JQYWdlVVJMKGlj
b24udXJsKCksIHRoaXMtPnVybCgpLnVybCgpKTsKKworICAgIC8vIEZJWE1FIC0gTmVlZCB0byBi
ZSBhYmxlIHRvIGRvIHRoZSBmb2xsb3dpbmcgcGxhdGZvcm0gaW5kZXBlbmRlbnRseQorI2lmIFBM
QVRGT1JNKE1BQykKKyAgICBGcmFtZU1hYyogZnJhbWVNYWMgPSBNYWModGhpcyk7CisgICAgaWNv
bkRhdGFiYXNlLT5zZXRJY29uVVJMRm9yUGFnZVVSTChpY29uLnVybCgpLCBmcmFtZU1hYy0+b3Jp
Z2luYWxSZXF1ZXN0VVJMKCkudXJsKCkpOworI2VuZGlmCit9CisKIHZvaWQgRnJhbWU6OnN0b3Ao
KQogewogICAgIC8vIGh0dHA6Ly9idWd6aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTA4NTQK
</data>
<flag name="review"
          id="3463"
          type_id="1"
          status="-"
          setter="sullivan"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>10629</attachid>
            <date>2006-09-18 10:45:33 -0700</date>
            <delta_ts>2006-09-18 10:52:12 -0700</delta_ts>
            <desc>This is alot better, I think</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>5610</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">SW5kZXg6IENoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBDaGFuZ2VMb2cJKHJldmlzaW9uIDE2NDIx
KQorKysgQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMDYtMDkt
MTggIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHA6Ly9idWd6aWxsYS5vcGVuZGFyd2lu
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5MDcKKyAgICAgICAgUkVHUkVTU0lPTjogTmV3IEljb24g
TG9hZGVycyBkb24ndCBoYW5kbGUgY2VydGFpbiBub24tc2VydmVyLXJvb3QgVVJMcyBjb3JyZWN0
bHkKKworICAgICAgICAqIGJyaWRnZS9tYWMvRnJhbWVNYWMuaDogQ2hhbmdlZCBvcmlnaW5hbFJl
cXVlc3RVUkwoKSB0byB2aXJ0dWFsCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkxvYWRlci5j
cHA6CisgICAgICAgIChJY29uTG9hZGVyOjpyZWNlaXZlZEFsbERhdGEpOiBNb3ZlZCB0aGUgInBh
Z2VVUkwgdG8gaWNvblVSTCBtYXBwaW5nIGxvZ2ljIiB0byBGcmFtZTo6Y29tbWl0SWNvblVSTFRv
SWNvbkRhdGFiYXNlKCkKKyAgICAgICAgKiBwYWdlL0ZyYW1lLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZyYW1lOjppY29uVVJMKTogQ29uc3RydWN0IHRoZSBpY29uIFVSTCBmcm9tICpvbmx5KiB0
aGUgcHJvdG9jb2wgYW5kIGhvc3Qgb2YgdGhlIGZyYW1lJ3MgdXJsLgorICAgICAgICAoV2ViQ29y
ZTo6RnJhbWU6OmVuZElmTm90TG9hZGluZyk6IENhbGwgY29tbWl0SWNvblVSTFRvSWNvbkRhdGFi
YXNlKCkgaWYgd2UncmUgbm90IGtpY2tpbmcgb2ZmIGFuIGljb24gbG9hZAorICAgICAgICAoV2Vi
Q29yZTo6RnJhbWU6OmNvbW1pdEljb25VUkxUb0ljb25EYXRhYmFzZSk6IE1hcCB0aGUgY29tcGxl
dGVkIGRvYydzIHBhZ2VVUkwgdG8gdGhlIGljb25VUkwKKyAgICAgICAgKiBwYWdlL0ZyYW1lLmg6
IEFkZGVkIHB1cmUgdmlydHVhbCBvcmlnaW5hbFJlcXVlc3RVUkwoKQorCiAyMDA2LTA5LTE4ICBS
b2IgQnVpcyAgPGJ1aXNAa2RlLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBNYWNpZWouCklu
ZGV4OiBicmlkZ2UvbWFjL0ZyYW1lTWFjLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gYnJpZGdlL21hYy9GcmFt
ZU1hYy5oCShyZXZpc2lvbiAxNjQyMSkKKysrIGJyaWRnZS9tYWMvRnJhbWVNYWMuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMzE4LDcgKzMxOCw3IEBACiAgICAgdm9pZCBwYWludEN1c3RvbUhpZ2hsaWdo
dChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGNvbnN0IEZsb2F0UmVjdCYgYm94UmVjdCwgY29u
c3QgRmxvYXRSZWN0JiBsaW5lUmVjdCwgYm9vbCB0ZXh0LCBib29sIGxpbmUpOwogICAgIAogICAg
IE5TRXZlbnQqIGN1cnJlbnRFdmVudCgpIHsgcmV0dXJuIF9jdXJyZW50RXZlbnQ7IH0KLSAgICBL
VVJMIG9yaWdpbmFsUmVxdWVzdFVSTCgpIGNvbnN0OworICAgIHZpcnR1YWwgS1VSTCBvcmlnaW5h
bFJlcXVlc3RVUkwoKSBjb25zdDsKICAgICAKIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIHZvaWQg
c3RhcnRSZWRpcmVjdGlvblRpbWVyKCk7CkBAIC0zMjksNyArMzI5LDcgQEAKICAgICB2aXJ0dWFs
IHZvaWQgaGFuZGxlTW91c2VQcmVzc0V2ZW50KGNvbnN0IE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJl
c3VsdHMmKTsKICAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlTW91c2VNb3ZlRXZlbnQoY29uc3QgTW91
c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cyYpOwogICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVNb3Vz
ZVJlbGVhc2VFdmVudChjb25zdCBNb3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzJik7Ci0gICAg
CisgICAgICAKICAgICBOU1ZpZXcqIG1vdXNlRG93blZpZXdJZlN0aWxsR29vZCgpOwogCiAgICAg
TlNWaWV3KiBuZXh0S2V5Vmlld0luRnJhbWUoTm9kZSogc3RhcnRpbmdQb2ludCwgU2VsZWN0aW9u
RGlyZWN0aW9uLCBib29sKiBmb2N1c0NhbGxSZXN1bHRlZEluVmlld0JlaW5nQ3JlYXRlZCA9IDAp
OwpJbmRleDogbG9hZGVyL2ljb24vSWNvbkxvYWRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbG9hZGVy
L2ljb24vSWNvbkxvYWRlci5jcHAJKHJldmlzaW9uIDE2NDIxKQorKysgbG9hZGVyL2ljb24vSWNv
bkxvYWRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwOCw3ICsxMDgsNyBAQAogICAgICAgICBz
aXplID0gbV9kYXRhLnNpemUoKTsKICAgICB9CiAgICAgICAgIAotICAgIEljb25EYXRhYmFzZSAq
IGljb25EYXRhYmFzZSA9IEljb25EYXRhYmFzZTo6c2hhcmVkSWNvbkRhdGFiYXNlKCk7CisgICAg
SWNvbkRhdGFiYXNlKiBpY29uRGF0YWJhc2UgPSBJY29uRGF0YWJhc2U6OnNoYXJlZEljb25EYXRh
YmFzZSgpOwogICAgIEFTU0VSVChpY29uRGF0YWJhc2UpOwogICAgIAogICAgIEtVUkwgaWNvblVS
TChyZXNvdXJjZUxvYWRlci0+dXJsKCkpOwpAQCAtMTE4LDE2ICsxMTgsMTAgQEAKICAgICBlbHNl
CiAgICAgICAgIGljb25EYXRhYmFzZS0+c2V0SGF2ZU5vSWNvbkZvckljb25VUkwoaWNvblVSTC51
cmwoKSk7CiAgICAgICAgIAotICAgIC8vIFdlIHNldCBib3RoIHRoZSBvcmlnaW5hbCByZXF1ZXN0
IFVSTCBhbmQgdGhlIGZpbmFsIFVSTCBhcyB0aGUgUGFnZVVSTHMgYXMgZGlmZmVyZW50IHBhcnRz
Ci0gICAgLy8gb2YgdGhlIGFwcCB0ZW5kIHRvIHdhbnQgdG8gcmV0YWluIGJvdGgKLSAgICBpY29u
RGF0YWJhc2UtPnNldEljb25VUkxGb3JQYWdlVVJMKGljb25VUkwudXJsKCksIG1fZnJhbWUtPnVy
bCgpLnVybCgpKTsKLQotICAgIC8vIEZJWE1FIC0gTmVlZCB0byBiZSBhYmxlIHRvIGRvIHRoZSBm
b2xsb3dpbmcgcGxhdGZvcm0gaW5kZXBlbmRlbnRseQotI2lmIFBMQVRGT1JNKE1BQykKLSAgICBG
cmFtZU1hYyogZnJhbWVNYWMgPSBNYWMobV9mcmFtZSk7Ci0gICAgaWNvbkRhdGFiYXNlLT5zZXRJ
Y29uVVJMRm9yUGFnZVVSTChpY29uVVJMLnVybCgpLCBmcmFtZU1hYy0+b3JpZ2luYWxSZXF1ZXN0
VVJMKCkudXJsKCkpOwotI2VuZGlmCi0KKyAgICAvLyBUZWxsIHRoZSBGcmFtZSB0byBtYXAgaXRz
IHVybChzKSB0byBpdHMgaWNvblVSTCBpbiB0aGUgZGF0YWJhc2UKKyAgICBtX2ZyYW1lLT5jb21t
aXRJY29uVVJMVG9JY29uRGF0YWJhc2UoKTsKKyAgICAKKyAgICAvLyBTZW5kIHRoZSBub3RpZmlj
YXRpb24gdG8gdGhlIGFwcCB0aGF0IHRoaXMgaWNvbiBpcyBmaW5pc2hlZCBsb2FkaW5nCiAgICAg
bm90aWZ5SWNvbkNoYW5nZWQoaWNvblVSTCk7CiAKICAgICAvLyBSZXNvdXJjZUxvYWRlcnMgZGVs
ZXRlIHRoZW1zZWx2ZXMgYWZ0ZXIgdGhleSBkZWxpdmVyIHRoZWlyIGxhc3QgZGF0YSwgc28gd2Ug
Y2FuIGp1c3QgZm9yZ2V0IGFib3V0IGl0CkluZGV4OiBwYWdlL0ZyYW1lLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gcGFnZS9GcmFtZS5oCShyZXZpc2lvbiAxNjQyMSkKKysrIHBhZ2UvRnJhbWUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMTA4LDYgKzEwOCw3IEBACiAKICAgS1VSTCBpY29uVVJMKCk7CiAgIHZvaWQg
c2V0SWNvblVSTChjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiB0eXBlKTsKKyAgdm9p
ZCBjb21taXRJY29uVVJMVG9JY29uRGF0YWJhc2UoKTsKICAgCiAgIFBhZ2UqIHBhZ2UoKSBjb25z
dDsKICAgdm9pZCBwYWdlRGVzdHJveWVkKCk7CkBAIC02MDAsNyArNjAxLDcgQEAKICAgdm9pZCBy
ZXBhcnNlQ29uZmlndXJhdGlvbigpOwogCiBwcml2YXRlOgotCisgIHZpcnR1YWwgS1VSTCBvcmln
aW5hbFJlcXVlc3RVUkwoKSBjb25zdCA9IDA7CiAgIHZvaWQgY2hpbGRCZWdpbigpOwogCiAgIHZv
aWQgc3VibWl0Rm9ybUFnYWluKCk7CkluZGV4OiBwYWdlL0ZyYW1lLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBwYWdlL0ZyYW1lLmNwcAkocmV2aXNpb24gMTY0MjEpCisrKyBwYWdlL0ZyYW1lLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjM4LDcgKzIzOCw5IEBACiAgICAgaWYgKGQtPm1fdXJsLnByb3RvY29s
KCkgIT0gImh0dHAiICYmIGQtPm1fdXJsLnByb3RvY29sKCkgIT0gImh0dHBzIikKICAgICAgICAg
cmV0dXJuICIiOwogICAgICAgICAKLSAgICBLVVJMIHVybCA9IGQtPm1fdXJsOworICAgIEtVUkwg
dXJsOworICAgIHVybC5zZXRQcm90b2NvbChkLT5tX3VybC5wcm90b2NvbCgpKTsKKyAgICB1cmwu
c2V0SG9zdChkLT5tX3VybC5ob3N0KCkpOwogICAgIHVybC5zZXRQYXRoKCIvZmF2aWNvbi5pY28i
KTsKICAgICByZXR1cm4gdXJsOwogfQpAQCAtNzc3LDE2ICs3NzksMjkgQEAKICAgICBTdHJpbmcg
dXJsKGljb25VUkwoKS51cmwoKSk7CiAgICAgaWYgKHVybC5pc0VtcHR5KCkpCiAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgCisgICAgCiAgICAgSWNvbkRhdGFiYXNlKiBzaGFyZWRJY29uRGF0YWJh
c2UgPSBJY29uRGF0YWJhc2U6OnNoYXJlZEljb25EYXRhYmFzZSgpOwotICAgIGlmIChzaGFyZWRJ
Y29uRGF0YWJhc2UtPmhhc0VudHJ5Rm9ySWNvblVSTCh1cmwpICYmICFzaGFyZWRJY29uRGF0YWJh
c2UtPmlzSWNvbkV4cGlyZWRGb3JJY29uVVJMKHVybCkpCisgICAgLy8gSWYgd2UgYWxyZWFkeSBo
YXZlIGFuIHVuZXhwaXJlZCBpY29uLCB3ZSB3b24ndCBraWNrIG9mZiBhIGxvYWQgYnV0IHdlICp3
aWxsKiBtYXAgdGhlIGFwcHJvcHJpYXRlIFVSTHMgdG8gaXQKKyAgICBpZiAoc2hhcmVkSWNvbkRh
dGFiYXNlLT5oYXNFbnRyeUZvckljb25VUkwodXJsKSAmJiAhc2hhcmVkSWNvbkRhdGFiYXNlLT5p
c0ljb25FeHBpcmVkRm9ySWNvblVSTCh1cmwpKSB7CisgICAgICAgIGNvbW1pdEljb25VUkxUb0lj
b25EYXRhYmFzZSgpOwogICAgICAgICByZXR1cm47CisgICAgfQogICAgIAogICAgIGlmICghZC0+
bV9pY29uTG9hZGVyKQogICAgICAgICBkLT5tX2ljb25Mb2FkZXIgPSBJY29uTG9hZGVyOjpjcmVh
dGVGb3JGcmFtZSh0aGlzKTsKICAgICBkLT5tX2ljb25Mb2FkZXItPnN0YXJ0TG9hZGluZygpOwog
fQogCit2b2lkIEZyYW1lOjpjb21taXRJY29uVVJMVG9JY29uRGF0YWJhc2UoKQoreworICAgIEtV
UkwgaWNvbiA9IGljb25VUkwoKTsKKyAgICAKKyAgICBJY29uRGF0YWJhc2UqIGljb25EYXRhYmFz
ZSA9IEljb25EYXRhYmFzZTo6c2hhcmVkSWNvbkRhdGFiYXNlKCk7CisgICAgQVNTRVJUKGljb25E
YXRhYmFzZSk7CisgICAgaWNvbkRhdGFiYXNlLT5zZXRJY29uVVJMRm9yUGFnZVVSTChpY29uLnVy
bCgpLCB0aGlzLT51cmwoKS51cmwoKSk7CisgICAgaWNvbkRhdGFiYXNlLT5zZXRJY29uVVJMRm9y
UGFnZVVSTChpY29uLnVybCgpLCBvcmlnaW5hbFJlcXVlc3RVUkwoKS51cmwoKSk7Cit9CisKIHZv
aWQgRnJhbWU6OnN0b3AoKQogewogICAgIC8vIGh0dHA6Ly9idWd6aWxsYS5vcGVuZGFyd2luLm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTA4NTQK
</data>
<flag name="review"
          id="3468"
          type_id="1"
          status="+"
          setter="sullivan"
    />
          </attachment>
      

    </bug>

</bugzilla>