<?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>25485</bug_id>
          
          <creation_ts>2009-04-30 11:06:17 -0700</creation_ts>
          <short_desc>Implement visitedURL to Re-unfork Chromium.</short_desc>
          <delta_ts>2009-05-01 14:19:09 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</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>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>20952</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dimitri Glazkov (Google)">dglazkov</reporter>
          <assigned_to name="Dimitri Glazkov (Google)">dglazkov</assigned_to>
          <cc>darin</cc>
    
    <cc>zecke</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>119487</commentid>
    <comment_count>0</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-04-30 11:06:17 -0700</bug_when>
    <thetext>Change http://trac.webkit.org/changeset/43052 broke Chromium build -- we need to implement visitedURL in HashLinkChromium.cpp.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119534</commentid>
    <comment_count>1</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-04-30 16:02:11 -0700</bug_when>
    <thetext>Gar. This looks messy. I wonder if it&apos;ll be okay if I just do:

#if PLATFORM(CHROMIUM)
    LinkHash hash = visitedLinkHash(m_document-&gt;baseURL(), *attr); 
    if (!hash)
        return PseudoLink;
#endif

Vector&lt;UChar, 512&gt; url;

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119535</commentid>
    <comment_count>2</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-04-30 16:02:38 -0700</bug_when>
    <thetext>Or something like that :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119567</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2009-04-30 22:35:55 -0700</bug_when>
    <thetext>It seems like _only_ the QT port requires the visitedURL call.  Surely that is not a free call on other platforms, so maybe only the QT port should make that call.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119588</commentid>
    <comment_count>4</comment_count>
      <attachid>29940</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-05-01 09:23:47 -0700</bug_when>
    <thetext>Created attachment 29940
Only use visitedURL in QT builds, v1.

 WebCore/ChangeLog                |   13 +++++++++++++
 WebCore/css/CSSStyleSelector.cpp |   25 +++++++++++++++----------
 WebCore/platform/LinkHash.h      |    3 ++-
 3 files changed, 30 insertions(+), 11 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119589</commentid>
    <comment_count>5</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-05-01 09:28:52 -0700</bug_when>
    <thetext>Ok, here&apos;s an ugly fix -- create separate code paths for QT and non-QT builds in checkPseudoState. The good news is that the separation is only on the high level, because visitedLinkHash still uses visitedURL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119590</commentid>
    <comment_count>6</comment_count>
      <attachid>29940</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2009-05-01 09:34:52 -0700</bug_when>
    <thetext>Comment on attachment 29940
Only use visitedURL in QT builds, v1.

&gt; +        (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState): Moved guards around to
&gt; +            provide separate code paths for QT and non-QT ports.

It’s Qt, not QT. This mistake makes this especially confusing at Apple, because lots of people at Apple use QT to mean QuickTime.

&gt; +#if PLATFORM(QT)
&gt;  // Resolves the potentially relative URL &quot;attributeURL&quot; relative to the given
&gt;  // base URL, and returns the hash of the string that will be used for visited.
&gt;  // It will return an empty Vector in case of errors.
&gt;  void visitedURL(const KURL&amp; base, const AtomicString&amp; attributeURL, Vector&lt;UChar, 512&gt;&amp;);
&gt; -
&gt; +#endif

My general thought here is:

    1) It doesn’t do harm to declare a function we plan to never define, so sometimes we just leave out the #if statements in headers for cases like this.

    2) I believe adding this #if to the header but not the LinkHash.cpp file will break the Mac build, because we compile with a warning for functions that are defined with external linkage and not previously declared. So you need to add this #if to LinkHash.cpp, not just LinkHash.h.

review- because of breaking the Mac build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119591</commentid>
    <comment_count>7</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2009-05-01 09:35:32 -0700</bug_when>
    <thetext>The direction here seems fine. It’s good not to burden the non-Qt platforms with Qt’s requirement here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119595</commentid>
    <comment_count>8</comment_count>
      <attachid>29941</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-05-01 10:14:17 -0700</bug_when>
    <thetext>Created attachment 29941
Only use visitedURL in QT builds, v1.

 WebCore/ChangeLog                |   13 +++++++++++++
 WebCore/css/CSSStyleSelector.cpp |   25 +++++++++++++++----------
 WebCore/platform/LinkHash.h      |    3 ++-
 3 files changed, 30 insertions(+), 11 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119596</commentid>
    <comment_count>9</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-05-01 10:15:38 -0700</bug_when>
    <thetext>Oops, sorry -- hair-trigger-finger :) Correct patch coming up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119598</commentid>
    <comment_count>10</comment_count>
      <attachid>29942</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-05-01 10:16:42 -0700</bug_when>
    <thetext>Created attachment 29942
Only use visitedURL in QT builds, v2.

 WebCore/ChangeLog                |   12 ++++++++++++
 WebCore/css/CSSStyleSelector.cpp |   25 +++++++++++++++----------
 2 files changed, 27 insertions(+), 10 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119599</commentid>
    <comment_count>11</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-05-01 10:17:48 -0700</bug_when>
    <thetext>Fixed up -- I removed the guards in LinkHash.h and corrected the Qt whoopsie.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119617</commentid>
    <comment_count>12</comment_count>
      <attachid>29942</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-05-01 11:57:47 -0700</bug_when>
    <thetext>Comment on attachment 29942
Only use visitedURL in QT builds, v2.

You should mention restoring the order in your ChangeLog.  This looks sane, so long as you know that no other build besides Qt needs the visitedURL call.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119632</commentid>
    <comment_count>13</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-05-01 14:19:09 -0700</bug_when>
    <thetext>Landed as http://trac.webkit.org/changeset/43120.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>29940</attachid>
            <date>2009-05-01 09:23:47 -0700</date>
            <delta_ts>2009-05-01 10:17:58 -0700</delta_ts>
            <desc>Only use visitedURL in QT builds, v1.</desc>
            <filename>Only-use-visitedURL-in-QT-builds-v1..patch</filename>
            <type>text/plain</type>
            <size>3127</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">NmU2NWI4NmJkYWVlM2I5N2IwNDYyNzc0MTQwZjk5ZTE2MTFhMzg4MApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBjMDY4ZDMyLi44YTNiZTk4
IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE2IEBACisyMDA5LTA1LTAxICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NDg1CisgICAg
ICAgIE9ubHkgdXNlIHZpc2l0ZWRVUkwgaW4gUVQuIFRoaXMgaXMgYSBmb2xsb3ctdXAgY2hhbmdl
IHRvIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzQzMDUyLAorICAgICAgICB3aGlj
aCBicm9rZSBDaHJvbWl1bSBidWlsZC4KKworICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9y
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OlNlbGVjdG9yQ2hlY2tl
cjo6Y2hlY2tQc2V1ZG9TdGF0ZSk6IE1vdmVkIGd1YXJkcyBhcm91bmQgdG8KKyAgICAgICAgICAg
IHByb3ZpZGUgc2VwYXJhdGUgY29kZSBwYXRocyBmb3IgUVQgYW5kIG5vbi1RVCBwb3J0cy4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9MaW5rSGFzaC5oOiBBZGRlZCBRVCBwbGF0Zm9ybSBndWFyZC4KKwog
MjAwOS0wNS0wMSAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBUaW1vdGh5IEhhdGNoZXIuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2Nz
cy9DU1NTdHlsZVNlbGVjdG9yLmNwcCBiL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3Bw
CmluZGV4IDhiODY2YTcuLjNmMDBmNGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvY3NzL0NTU1N0eWxl
U2VsZWN0b3IuY3BwCisrKyBiL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCkBAIC04
NjcsMzAgKzg2NywzNSBAQCBQc2V1ZG9TdGF0ZSBDU1NTdHlsZVNlbGVjdG9yOjpTZWxlY3RvckNo
ZWNrZXI6OmNoZWNrUHNldWRvU3RhdGUoRWxlbWVudCogZWxlbWVudAogICAgIGlmICghY2hlY2tW
aXNpdGVkKQogICAgICAgICByZXR1cm4gUHNldWRvQW55TGluazsKIAotICAgIEZyYW1lKiBmcmFt
ZSA9IG1fZG9jdW1lbnQtPmZyYW1lKCk7Ci0gICAgaWYgKCFmcmFtZSkKLSAgICAgICAgcmV0dXJu
IFBzZXVkb0xpbms7Ci0KLSAgICBQYWdlKiBwYWdlID0gZnJhbWUtPnBhZ2UoKTsKLSAgICBpZiAo
IXBhZ2UpCi0gICAgICAgIHJldHVybiBQc2V1ZG9MaW5rOwotCisjaWYgUExBVEZPUk0oUVQpCiAg
ICAgVmVjdG9yPFVDaGFyLCA1MTI+IHVybDsKICAgICB2aXNpdGVkVVJMKG1fZG9jdW1lbnQtPmJh
c2VVUkwoKSwgKmF0dHIsIHVybCk7CiAgICAgaWYgKHVybC5pc0VtcHR5KCkpCiAgICAgICAgIHJl
dHVybiBQc2V1ZG9MaW5rOwogCi0jaWYgUExBVEZPUk0oUVQpCiAgICAgLy8gSWYgdGhlIFF0NC40
IGludGVyZmFjZSBmb3IgdGhlIGhpc3RvcnkgaXMgdXNlZCwgd2Ugd2lsbCBoYXZlIHRvIGZhbGxi
YWNrCiAgICAgLy8gdG8gdGhlIG9sZCBnbG9iYWwgaGlzdG9yeS4KICAgICBRV2ViSGlzdG9yeUlu
dGVyZmFjZSogaW50ZXJmYWNlID0gUVdlYkhpc3RvcnlJbnRlcmZhY2U6OmRlZmF1bHRJbnRlcmZh
Y2UoKTsKICAgICBpZiAoaW50ZXJmYWNlKQogICAgICAgICByZXR1cm4gaW50ZXJmYWNlLT5oaXN0
b3J5Q29udGFpbnMoUVN0cmluZyhyZWludGVycHJldF9jYXN0PFFDaGFyKj4odXJsLmRhdGEoKSks
IHVybC5zaXplKCkpKSA/IFBzZXVkb1Zpc2l0ZWQgOiBQc2V1ZG9MaW5rOwotI2VuZGlmCiAKICAg
ICBMaW5rSGFzaCBoYXNoID0gdmlzaXRlZExpbmtIYXNoKHVybC5kYXRhKCksIHVybC5zaXplKCkp
OwogICAgIGlmICghaGFzaCkKICAgICAgICAgcmV0dXJuIFBzZXVkb0xpbms7CisjZWxzZQorICAg
IExpbmtIYXNoIGhhc2ggPSB2aXNpdGVkTGlua0hhc2gobV9kb2N1bWVudC0+YmFzZVVSTCgpLCAq
YXR0cik7CisgICAgaWYgKCFoYXNoKQorICAgICAgICByZXR1cm4gUHNldWRvTGluazsKKyNlbmRp
ZgorCisgICAgRnJhbWUqIGZyYW1lID0gbV9kb2N1bWVudC0+ZnJhbWUoKTsKKyAgICBpZiAoIWZy
YW1lKQorICAgICAgICByZXR1cm4gUHNldWRvTGluazsKKworICAgIFBhZ2UqIHBhZ2UgPSBmcmFt
ZS0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuIFBzZXVkb0xpbms7CisK
ICAgICBtX2xpbmtzQ2hlY2tlZEZvclZpc2l0ZWRTdGF0ZS5hZGQoaGFzaCk7CiAgICAgcmV0dXJu
IHBhZ2UtPmdyb3VwKCkuaXNMaW5rVmlzaXRlZChoYXNoKSA/IFBzZXVkb1Zpc2l0ZWQgOiBQc2V1
ZG9MaW5rOwogfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9MaW5rSGFzaC5oIGIvV2Vi
Q29yZS9wbGF0Zm9ybS9MaW5rSGFzaC5oCmluZGV4IDI3NTY2NTQuLmU2NjYzNTIgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGxhdGZvcm0vTGlua0hhc2guaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL0xp
bmtIYXNoLmgKQEAgLTYyLDExICs2MiwxMiBAQCBMaW5rSGFzaCB2aXNpdGVkTGlua0hhc2goY29u
c3QgVUNoYXIqIHVybCwgdW5zaWduZWQgbGVuZ3RoKTsKIC8vIGxvb2sgbGlrZSBhIHJlbGF0aXZl
IFVSTC4KIExpbmtIYXNoIHZpc2l0ZWRMaW5rSGFzaChjb25zdCBLVVJMJiBiYXNlLCBjb25zdCBB
dG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCk7CiAKKyNpZiBQTEFURk9STShRVCkKIC8vIFJlc29s
dmVzIHRoZSBwb3RlbnRpYWxseSByZWxhdGl2ZSBVUkwgImF0dHJpYnV0ZVVSTCIgcmVsYXRpdmUg
dG8gdGhlIGdpdmVuCiAvLyBiYXNlIFVSTCwgYW5kIHJldHVybnMgdGhlIGhhc2ggb2YgdGhlIHN0
cmluZyB0aGF0IHdpbGwgYmUgdXNlZCBmb3IgdmlzaXRlZC4KIC8vIEl0IHdpbGwgcmV0dXJuIGFu
IGVtcHR5IFZlY3RvciBpbiBjYXNlIG9mIGVycm9ycy4KIHZvaWQgdmlzaXRlZFVSTChjb25zdCBL
VVJMJiBiYXNlLCBjb25zdCBBdG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCwgVmVjdG9yPFVDaGFy
LCA1MTI+Jik7Ci0KKyNlbmRpZgogCiB9ICAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCg==
</data>
<flag name="review"
          id="15004"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>29941</attachid>
            <date>2009-05-01 10:14:17 -0700</date>
            <delta_ts>2009-05-01 10:14:45 -0700</delta_ts>
            <desc>Only use visitedURL in QT builds, v1.</desc>
            <filename>Only-use-visitedURL-in-QT-builds-v1..patch</filename>
            <type>text/plain</type>
            <size>3127</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">MjI4YTUxNjdiMzA4YzJjNTYwYjY0NmU3ZTJjZTBmMmJkNDE0ZmZkOApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBjMDY4ZDMyLi44YTNiZTk4
IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE2IEBACisyMDA5LTA1LTAxICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NDg1CisgICAg
ICAgIE9ubHkgdXNlIHZpc2l0ZWRVUkwgaW4gUVQuIFRoaXMgaXMgYSBmb2xsb3ctdXAgY2hhbmdl
IHRvIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzQzMDUyLAorICAgICAgICB3aGlj
aCBicm9rZSBDaHJvbWl1bSBidWlsZC4KKworICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9y
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OlNlbGVjdG9yQ2hlY2tl
cjo6Y2hlY2tQc2V1ZG9TdGF0ZSk6IE1vdmVkIGd1YXJkcyBhcm91bmQgdG8KKyAgICAgICAgICAg
IHByb3ZpZGUgc2VwYXJhdGUgY29kZSBwYXRocyBmb3IgUVQgYW5kIG5vbi1RVCBwb3J0cy4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9MaW5rSGFzaC5oOiBBZGRlZCBRVCBwbGF0Zm9ybSBndWFyZC4KKwog
MjAwOS0wNS0wMSAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBUaW1vdGh5IEhhdGNoZXIuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2Nz
cy9DU1NTdHlsZVNlbGVjdG9yLmNwcCBiL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3Bw
CmluZGV4IDhiODY2YTcuLjNmMDBmNGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvY3NzL0NTU1N0eWxl
U2VsZWN0b3IuY3BwCisrKyBiL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCkBAIC04
NjcsMzAgKzg2NywzNSBAQCBQc2V1ZG9TdGF0ZSBDU1NTdHlsZVNlbGVjdG9yOjpTZWxlY3RvckNo
ZWNrZXI6OmNoZWNrUHNldWRvU3RhdGUoRWxlbWVudCogZWxlbWVudAogICAgIGlmICghY2hlY2tW
aXNpdGVkKQogICAgICAgICByZXR1cm4gUHNldWRvQW55TGluazsKIAotICAgIEZyYW1lKiBmcmFt
ZSA9IG1fZG9jdW1lbnQtPmZyYW1lKCk7Ci0gICAgaWYgKCFmcmFtZSkKLSAgICAgICAgcmV0dXJu
IFBzZXVkb0xpbms7Ci0KLSAgICBQYWdlKiBwYWdlID0gZnJhbWUtPnBhZ2UoKTsKLSAgICBpZiAo
IXBhZ2UpCi0gICAgICAgIHJldHVybiBQc2V1ZG9MaW5rOwotCisjaWYgUExBVEZPUk0oUVQpCiAg
ICAgVmVjdG9yPFVDaGFyLCA1MTI+IHVybDsKICAgICB2aXNpdGVkVVJMKG1fZG9jdW1lbnQtPmJh
c2VVUkwoKSwgKmF0dHIsIHVybCk7CiAgICAgaWYgKHVybC5pc0VtcHR5KCkpCiAgICAgICAgIHJl
dHVybiBQc2V1ZG9MaW5rOwogCi0jaWYgUExBVEZPUk0oUVQpCiAgICAgLy8gSWYgdGhlIFF0NC40
IGludGVyZmFjZSBmb3IgdGhlIGhpc3RvcnkgaXMgdXNlZCwgd2Ugd2lsbCBoYXZlIHRvIGZhbGxi
YWNrCiAgICAgLy8gdG8gdGhlIG9sZCBnbG9iYWwgaGlzdG9yeS4KICAgICBRV2ViSGlzdG9yeUlu
dGVyZmFjZSogaW50ZXJmYWNlID0gUVdlYkhpc3RvcnlJbnRlcmZhY2U6OmRlZmF1bHRJbnRlcmZh
Y2UoKTsKICAgICBpZiAoaW50ZXJmYWNlKQogICAgICAgICByZXR1cm4gaW50ZXJmYWNlLT5oaXN0
b3J5Q29udGFpbnMoUVN0cmluZyhyZWludGVycHJldF9jYXN0PFFDaGFyKj4odXJsLmRhdGEoKSks
IHVybC5zaXplKCkpKSA/IFBzZXVkb1Zpc2l0ZWQgOiBQc2V1ZG9MaW5rOwotI2VuZGlmCiAKICAg
ICBMaW5rSGFzaCBoYXNoID0gdmlzaXRlZExpbmtIYXNoKHVybC5kYXRhKCksIHVybC5zaXplKCkp
OwogICAgIGlmICghaGFzaCkKICAgICAgICAgcmV0dXJuIFBzZXVkb0xpbms7CisjZWxzZQorICAg
IExpbmtIYXNoIGhhc2ggPSB2aXNpdGVkTGlua0hhc2gobV9kb2N1bWVudC0+YmFzZVVSTCgpLCAq
YXR0cik7CisgICAgaWYgKCFoYXNoKQorICAgICAgICByZXR1cm4gUHNldWRvTGluazsKKyNlbmRp
ZgorCisgICAgRnJhbWUqIGZyYW1lID0gbV9kb2N1bWVudC0+ZnJhbWUoKTsKKyAgICBpZiAoIWZy
YW1lKQorICAgICAgICByZXR1cm4gUHNldWRvTGluazsKKworICAgIFBhZ2UqIHBhZ2UgPSBmcmFt
ZS0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuIFBzZXVkb0xpbms7CisK
ICAgICBtX2xpbmtzQ2hlY2tlZEZvclZpc2l0ZWRTdGF0ZS5hZGQoaGFzaCk7CiAgICAgcmV0dXJu
IHBhZ2UtPmdyb3VwKCkuaXNMaW5rVmlzaXRlZChoYXNoKSA/IFBzZXVkb1Zpc2l0ZWQgOiBQc2V1
ZG9MaW5rOwogfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9MaW5rSGFzaC5oIGIvV2Vi
Q29yZS9wbGF0Zm9ybS9MaW5rSGFzaC5oCmluZGV4IDI3NTY2NTQuLmU2NjYzNTIgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGxhdGZvcm0vTGlua0hhc2guaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL0xp
bmtIYXNoLmgKQEAgLTYyLDExICs2MiwxMiBAQCBMaW5rSGFzaCB2aXNpdGVkTGlua0hhc2goY29u
c3QgVUNoYXIqIHVybCwgdW5zaWduZWQgbGVuZ3RoKTsKIC8vIGxvb2sgbGlrZSBhIHJlbGF0aXZl
IFVSTC4KIExpbmtIYXNoIHZpc2l0ZWRMaW5rSGFzaChjb25zdCBLVVJMJiBiYXNlLCBjb25zdCBB
dG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCk7CiAKKyNpZiBQTEFURk9STShRVCkKIC8vIFJlc29s
dmVzIHRoZSBwb3RlbnRpYWxseSByZWxhdGl2ZSBVUkwgImF0dHJpYnV0ZVVSTCIgcmVsYXRpdmUg
dG8gdGhlIGdpdmVuCiAvLyBiYXNlIFVSTCwgYW5kIHJldHVybnMgdGhlIGhhc2ggb2YgdGhlIHN0
cmluZyB0aGF0IHdpbGwgYmUgdXNlZCBmb3IgdmlzaXRlZC4KIC8vIEl0IHdpbGwgcmV0dXJuIGFu
IGVtcHR5IFZlY3RvciBpbiBjYXNlIG9mIGVycm9ycy4KIHZvaWQgdmlzaXRlZFVSTChjb25zdCBL
VVJMJiBiYXNlLCBjb25zdCBBdG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCwgVmVjdG9yPFVDaGFy
LCA1MTI+Jik7Ci0KKyNlbmRpZgogCiB9ICAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>29942</attachid>
            <date>2009-05-01 10:16:42 -0700</date>
            <delta_ts>2009-05-01 11:57:47 -0700</delta_ts>
            <desc>Only use visitedURL in QT builds, v2.</desc>
            <filename>Only-use-visitedURL-in-QT-builds-v2..patch</filename>
            <type>text/plain</type>
            <size>2348</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">OWFlYmU2NjRjYTQ5YjI3NjM1MDIxNTdiNzc5YTkwNmVkMzNhMWJkMQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBjMDY4ZDMyLi4xODQ1MjFk
IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE1IEBACisyMDA5LTA1LTAxICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NDg1CisgICAg
ICAgIE9ubHkgdXNlIHZpc2l0ZWRVUkwgaW4gUXQuIFRoaXMgaXMgYSBmb2xsb3ctdXAgY2hhbmdl
IHRvIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzQzMDUyLAorICAgICAgICB3aGlj
aCBicm9rZSBDaHJvbWl1bSBidWlsZC4KKworICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9y
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OlNlbGVjdG9yQ2hlY2tl
cjo6Y2hlY2tQc2V1ZG9TdGF0ZSk6IE1vdmVkIGd1YXJkcyBhcm91bmQgdG8KKyAgICAgICAgICAg
IHByb3ZpZGUgc2VwYXJhdGUgY29kZSBwYXRocyBmb3IgUXQgYW5kIG5vbi1RdCBwb3J0cy4KKwog
MjAwOS0wNS0wMSAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBUaW1vdGh5IEhhdGNoZXIuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2Nz
cy9DU1NTdHlsZVNlbGVjdG9yLmNwcCBiL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3Bw
CmluZGV4IDhiODY2YTcuLjNmMDBmNGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvY3NzL0NTU1N0eWxl
U2VsZWN0b3IuY3BwCisrKyBiL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCkBAIC04
NjcsMzAgKzg2NywzNSBAQCBQc2V1ZG9TdGF0ZSBDU1NTdHlsZVNlbGVjdG9yOjpTZWxlY3RvckNo
ZWNrZXI6OmNoZWNrUHNldWRvU3RhdGUoRWxlbWVudCogZWxlbWVudAogICAgIGlmICghY2hlY2tW
aXNpdGVkKQogICAgICAgICByZXR1cm4gUHNldWRvQW55TGluazsKIAotICAgIEZyYW1lKiBmcmFt
ZSA9IG1fZG9jdW1lbnQtPmZyYW1lKCk7Ci0gICAgaWYgKCFmcmFtZSkKLSAgICAgICAgcmV0dXJu
IFBzZXVkb0xpbms7Ci0KLSAgICBQYWdlKiBwYWdlID0gZnJhbWUtPnBhZ2UoKTsKLSAgICBpZiAo
IXBhZ2UpCi0gICAgICAgIHJldHVybiBQc2V1ZG9MaW5rOwotCisjaWYgUExBVEZPUk0oUVQpCiAg
ICAgVmVjdG9yPFVDaGFyLCA1MTI+IHVybDsKICAgICB2aXNpdGVkVVJMKG1fZG9jdW1lbnQtPmJh
c2VVUkwoKSwgKmF0dHIsIHVybCk7CiAgICAgaWYgKHVybC5pc0VtcHR5KCkpCiAgICAgICAgIHJl
dHVybiBQc2V1ZG9MaW5rOwogCi0jaWYgUExBVEZPUk0oUVQpCiAgICAgLy8gSWYgdGhlIFF0NC40
IGludGVyZmFjZSBmb3IgdGhlIGhpc3RvcnkgaXMgdXNlZCwgd2Ugd2lsbCBoYXZlIHRvIGZhbGxi
YWNrCiAgICAgLy8gdG8gdGhlIG9sZCBnbG9iYWwgaGlzdG9yeS4KICAgICBRV2ViSGlzdG9yeUlu
dGVyZmFjZSogaW50ZXJmYWNlID0gUVdlYkhpc3RvcnlJbnRlcmZhY2U6OmRlZmF1bHRJbnRlcmZh
Y2UoKTsKICAgICBpZiAoaW50ZXJmYWNlKQogICAgICAgICByZXR1cm4gaW50ZXJmYWNlLT5oaXN0
b3J5Q29udGFpbnMoUVN0cmluZyhyZWludGVycHJldF9jYXN0PFFDaGFyKj4odXJsLmRhdGEoKSks
IHVybC5zaXplKCkpKSA/IFBzZXVkb1Zpc2l0ZWQgOiBQc2V1ZG9MaW5rOwotI2VuZGlmCiAKICAg
ICBMaW5rSGFzaCBoYXNoID0gdmlzaXRlZExpbmtIYXNoKHVybC5kYXRhKCksIHVybC5zaXplKCkp
OwogICAgIGlmICghaGFzaCkKICAgICAgICAgcmV0dXJuIFBzZXVkb0xpbms7CisjZWxzZQorICAg
IExpbmtIYXNoIGhhc2ggPSB2aXNpdGVkTGlua0hhc2gobV9kb2N1bWVudC0+YmFzZVVSTCgpLCAq
YXR0cik7CisgICAgaWYgKCFoYXNoKQorICAgICAgICByZXR1cm4gUHNldWRvTGluazsKKyNlbmRp
ZgorCisgICAgRnJhbWUqIGZyYW1lID0gbV9kb2N1bWVudC0+ZnJhbWUoKTsKKyAgICBpZiAoIWZy
YW1lKQorICAgICAgICByZXR1cm4gUHNldWRvTGluazsKKworICAgIFBhZ2UqIHBhZ2UgPSBmcmFt
ZS0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuIFBzZXVkb0xpbms7CisK
ICAgICBtX2xpbmtzQ2hlY2tlZEZvclZpc2l0ZWRTdGF0ZS5hZGQoaGFzaCk7CiAgICAgcmV0dXJu
IHBhZ2UtPmdyb3VwKCkuaXNMaW5rVmlzaXRlZChoYXNoKSA/IFBzZXVkb1Zpc2l0ZWQgOiBQc2V1
ZG9MaW5rOwogfQo=
</data>
<flag name="review"
          id="15006"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>