Changeset 84607 in webkit


Ignore:
Timestamp:
Apr 22, 2011 12:09:30 AM (13 years ago)
Author:
caseq@chromium.org
Message:

2011-04-21 Andrey Kosyakov <caseq@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: exception in front-end when user selects resource info for resource that does not have response headers yet
https://bugs.webkit.org/show_bug.cgi?id=59123

  • inspector/front-end/ResourceCookiesView.js: (WebInspector.ResourceCookiesView): (WebInspector.ResourceCookiesView.prototype.show): (WebInspector.ResourceCookiesView.prototype.get _gotCookies): (WebInspector.ResourceCookiesView.prototype._buildCookiesTable):
Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r84604 r84607  
     12011-04-21  Andrey Kosyakov  <caseq@chromium.org>
     2
     3        Reviewed by Yury Semikhatsky.
     4
     5        Web Inspector: exception in front-end when user selects resource info for resource that does not have response headers yet
     6        https://bugs.webkit.org/show_bug.cgi?id=59123
     7
     8        * inspector/front-end/ResourceCookiesView.js:
     9        (WebInspector.ResourceCookiesView):
     10        (WebInspector.ResourceCookiesView.prototype.show):
     11        (WebInspector.ResourceCookiesView.prototype.get _gotCookies):
     12        (WebInspector.ResourceCookiesView.prototype._buildCookiesTable):
     13
    1142011-04-21  Beth Dakin  <bdakin@apple.com>
    215
  • trunk/Source/WebCore/inspector/front-end/ResourceCookiesView.js

    r75629 r84607  
    3636    this._resource = resource;
    3737
    38     resource.addEventListener("requestHeaders changed", this.show, this);
    39     resource.addEventListener("responseHeaders changed", this.show, this);
     38    resource.addEventListener("requestHeaders changed", this._refreshCookies, this);
     39    resource.addEventListener("responseHeaders changed", this._refreshCookies, this);
    4040}
    4141
     
    4343    show: function(parentElement)
    4444    {
    45         if (!this._resource.requestCookies && !this._resource.responseCookies) {
     45        if (!this._gotCookies) {
    4646            if (!this._emptyMsgElement) {
    4747                this._emptyMsgElement = document.createElement("div");
     
    5454        }
    5555
    56         if (this._emptyMsgElement)
    57             this._emptyMsgElement.parentElement.removeChild(this._emptyMsgElement);
     56        if (!this._cookiesTable)
     57            this._buildCookiesTable();
     58        WebInspector.View.prototype.show.call(this, parentElement);
     59        this._cookiesTable.updateWidths();
     60    },
    5861
    59         if (!this._cookiesTable) {
    60             this._cookiesTable = new WebInspector.CookiesTable(null, true, true);
    61             this._cookiesTable.addCookiesFolder(WebInspector.UIString("Request Cookies"), this._resource.requestCookies);
    62             this._cookiesTable.addCookiesFolder(WebInspector.UIString("Response Cookies"), this._resource.responseCookies);
    63             this.element.appendChild(this._cookiesTable.element);
    64         }
     62    get _gotCookies()
     63    {
     64        return !!(this._resource.requestCookies || this._resource.responseCookies);
     65    },
    6566
    66         WebInspector.View.prototype.show.call(this, parentElement);
     67    _buildCookiesTable: function()
     68    {
     69        this.element.removeChildren();
     70
     71        this._cookiesTable = new WebInspector.CookiesTable(null, true, true);
     72        this._cookiesTable.addCookiesFolder(WebInspector.UIString("Request Cookies"), this._resource.requestCookies);
     73        this._cookiesTable.addCookiesFolder(WebInspector.UIString("Response Cookies"), this._resource.responseCookies);
     74        this.element.appendChild(this._cookiesTable.element);
     75    },
     76
     77    _refreshCookies: function()
     78    {
     79        delete this._cookiesTable;
     80        if (!this._gotCookies || !this.visible)
     81            return;
     82        this._buildCookiesTable();
    6783        this._cookiesTable.updateWidths();
    6884    }
Note: See TracChangeset for help on using the changeset viewer.