<?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>58537</bug_id>
          
          <creation_ts>2011-04-14 06:31:47 -0700</creation_ts>
          <short_desc>Web Inspector: TAB should not move focus from the text editor while live editing</short_desc>
          <delta_ts>2011-04-18 07:41:25 -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>Web Inspector (Deprecated)</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Andrey Adaikin">aandrey</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>385716</commentid>
    <comment_count>0</comment_count>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2011-04-14 06:31:47 -0700</bug_when>
    <thetext>Seems like we should override the native behavior for the TAB key.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386632</commentid>
    <comment_count>1</comment_count>
      <attachid>89791</attachid>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2011-04-15 08:18:33 -0700</bug_when>
    <thetext>Created attachment 89791
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387610</commentid>
    <comment_count>2</comment_count>
      <attachid>89791</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-04-18 02:58:11 -0700</bug_when>
    <thetext>Comment on attachment 89791
Patch

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

&gt; Source/WebCore/inspector/front-end/TextViewer.js:243
&gt; +        var handleUndo = this._mainPanel.handleUndoRedo.bind(this._mainPanel, 0);

Why do we prefer 0/1 to false/true here?

&gt; Source/WebCore/inspector/front-end/TextViewer.js:951
&gt; +        this._setCaretLocation(newRange.endLine, newRange.endColumn);

Shouldn&apos;t we scroll the viewer to the new caret location?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387618</commentid>
    <comment_count>3</comment_count>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2011-04-18 03:42:51 -0700</bug_when>
    <thetext>Done. Diff to apply before the commit:


diff --git a/Source/WebCore/inspector/front-end/TextViewer.js b/Source/WebCore/inspector/front-end/TextViewer.js
index 09c3092..8f823cf 100644
--- a/Source/WebCore/inspector/front-end/TextViewer.js
+++ b/Source/WebCore/inspector/front-end/TextViewer.js
@@ -240,13 +240,13 @@ WebInspector.TextViewer.prototype = {
         this._shortcuts[WebInspector.KeyboardShortcut.makeKey(keys.Enter.code, modifiers.CtrlOrMeta)] = commitEditing;
         this._shortcuts[WebInspector.KeyboardShortcut.makeKey(keys.Esc.code)] = cancelEditing;
 
-        var handleUndo = this._mainPanel.handleUndoRedo.bind(this._mainPanel, 0);
-        var handleRedo = this._mainPanel.handleUndoRedo.bind(this._mainPanel, 1);
+        var handleUndo = this._mainPanel.handleUndoRedo.bind(this._mainPanel, false);
+        var handleRedo = this._mainPanel.handleUndoRedo.bind(this._mainPanel, true);
         this._shortcuts[WebInspector.KeyboardShortcut.makeKey(&quot;z&quot;, modifiers.CtrlOrMeta)] = handleUndo;
         this._shortcuts[WebInspector.KeyboardShortcut.makeKey(&quot;z&quot;, modifiers.Shift | modifiers.CtrlOrMeta)] = handleRedo;
 
-        var handleTabKey = this._mainPanel.handleTabKeyPress.bind(this._mainPanel, 0);
-        var handleShiftTabKey = this._mainPanel.handleTabKeyPress.bind(this._mainPanel, 1);
+        var handleTabKey = this._mainPanel.handleTabKeyPress.bind(this._mainPanel, false);
+        var handleShiftTabKey = this._mainPanel.handleTabKeyPress.bind(this._mainPanel, true);
         this._shortcuts[WebInspector.KeyboardShortcut.makeKey(keys.Tab.code)] = handleTabKey;
         this._shortcuts[WebInspector.KeyboardShortcut.makeKey(keys.Tab.code, modifiers.Shift)] = handleShiftTabKey;
     },
@@ -948,7 +948,7 @@ WebInspector.TextEditorMainPanel.prototype = {
         this._exitTextChangeMode(range, newRange);
         this.endUpdates();
 
-        this._setCaretLocation(newRange.endLine, newRange.endColumn);
+        this._setCaretLocation(newRange.endLine, newRange.endColumn, true);
         return true;
     },</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387660</commentid>
    <comment_count>4</comment_count>
      <attachid>90022</attachid>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2011-04-18 05:49:22 -0700</bug_when>
    <thetext>Created attachment 90022
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387666</commentid>
    <comment_count>5</comment_count>
      <attachid>90022</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-18 06:09:37 -0700</bug_when>
    <thetext>Comment on attachment 90022
Patch

Rejecting attachment 90022 from commit-queue.

aandrey@chromium.org does not have committer permissions according to http://trac.webkit.org/browser/trunk/Tools/Scripts/webkitpy/common/config/committers.py.

- If you do not have committer rights please read http://webkit.org/coding/contributing.html for instructions on how to use bugzilla flags.

- If you have committer rights please correct the error in Tools/Scripts/webkitpy/common/config/committers.py by adding yourself to the file (no review needed).  The commit-queue restarts itself every 2 hours.  After restart the commit-queue will correctly respect your committer rights.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387673</commentid>
    <comment_count>6</comment_count>
      <attachid>90022</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-18 06:36:27 -0700</bug_when>
    <thetext>Comment on attachment 90022
Patch

Clearing flags on attachment: 90022

Committed r84136: &lt;http://trac.webkit.org/changeset/84136&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387674</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-18 06:36:33 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>387707</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-18 07:41:25 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/84136 might have broken Windows 7 Release (Tests)
The following tests are not passing:
http/tests/inspector/resource-tree-model.html</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89791</attachid>
            <date>2011-04-15 08:18:33 -0700</date>
            <delta_ts>2011-04-18 05:49:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58537-20110415191830.patch</filename>
            <type>text/plain</type>
            <size>6327</size>
            <attacher name="Andrey Adaikin">aandrey</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODM4MjEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1MTkxY2Q5ODA1NmY0NGQ5
YTA1ODcxNzQyNDg0NDNhNTQ0NDA0OGUxLi5iMzRlZDI1YzljNGJjYmMwYTc1ZTcxOGE2ZWZlOTUz
NjM0MTJhMzEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDQtMTUgIEFuZHJl
eSBBZGFpa2luICA8YWFuZHJleUBnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFRBQiBzaG91bGQgbm90IG1v
dmUgZm9jdXMgZnJvbSB0aGUgdGV4dCBlZGl0b3Igd2hpbGUgbGl2ZSBlZGl0aW5nCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODUzNworCisgICAgICAg
ICogaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0Vmlld2VyLmpzOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlRleHRWaWV3ZXIucHJvdG90eXBlLl9yZWdpc3RlclNob3J0Y3V0cyk6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuVGV4dFZpZXdlci5wcm90b3R5cGUuX2NhbmNlbEVkaXRpbmcpOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlLmhhbmRsZVVuZG9S
ZWRvKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsLnByb3RvdHlw
ZS5oYW5kbGVUYWJLZXlQcmVzcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1h
aW5QYW5lbC5wcm90b3R5cGUuX3NldENhcmV0TG9jYXRpb24pOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlLl9hcHBseURvbVVwZGF0ZXMpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlLl9zZXRUZXh0
KToKKwogMjAxMS0wNC0xNCAgUmVuYXRhIEhvZG92YW4gIDxyZW5pQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgTmlrb2xhcyBaaW1tZXJtYW5uLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0Vmlld2VyLmpzIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0Vmlld2VyLmpzCmluZGV4IDQzMjkxZjJlOTFiZmEz
ZDgxOGY2MjhiOTRhYjQ1MmYzOTcxZWQwYTUuLjA5YzMwOTJmN2FmNTc3YWY0ODhjNzA0YWViZmJi
NTVlMGI4NjRkYzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvVGV4dFZpZXdlci5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L1RleHRWaWV3ZXIuanMKQEAgLTI0MCwxMCArMjQwLDE1IEBAIFdlYkluc3BlY3Rvci5UZXh0Vmll
d2VyLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5fc2hvcnRjdXRzW1dlYkluc3BlY3Rvci5L
ZXlib2FyZFNob3J0Y3V0Lm1ha2VLZXkoa2V5cy5FbnRlci5jb2RlLCBtb2RpZmllcnMuQ3RybE9y
TWV0YSldID0gY29tbWl0RWRpdGluZzsKICAgICAgICAgdGhpcy5fc2hvcnRjdXRzW1dlYkluc3Bl
Y3Rvci5LZXlib2FyZFNob3J0Y3V0Lm1ha2VLZXkoa2V5cy5Fc2MuY29kZSldID0gY2FuY2VsRWRp
dGluZzsKIAotICAgICAgICB2YXIgaGFuZGxlVW5kbyA9IHRoaXMuX2hhbmRsZVVuZG9SZWRvLmJp
bmQodGhpcywgMCk7Ci0gICAgICAgIHZhciBoYW5kbGVSZWRvID0gdGhpcy5faGFuZGxlVW5kb1Jl
ZG8uYmluZCh0aGlzLCAxKTsKKyAgICAgICAgdmFyIGhhbmRsZVVuZG8gPSB0aGlzLl9tYWluUGFu
ZWwuaGFuZGxlVW5kb1JlZG8uYmluZCh0aGlzLl9tYWluUGFuZWwsIDApOworICAgICAgICB2YXIg
aGFuZGxlUmVkbyA9IHRoaXMuX21haW5QYW5lbC5oYW5kbGVVbmRvUmVkby5iaW5kKHRoaXMuX21h
aW5QYW5lbCwgMSk7CiAgICAgICAgIHRoaXMuX3Nob3J0Y3V0c1tXZWJJbnNwZWN0b3IuS2V5Ym9h
cmRTaG9ydGN1dC5tYWtlS2V5KCJ6IiwgbW9kaWZpZXJzLkN0cmxPck1ldGEpXSA9IGhhbmRsZVVu
ZG87CiAgICAgICAgIHRoaXMuX3Nob3J0Y3V0c1tXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1
dC5tYWtlS2V5KCJ6IiwgbW9kaWZpZXJzLlNoaWZ0IHwgbW9kaWZpZXJzLkN0cmxPck1ldGEpXSA9
IGhhbmRsZVJlZG87CisKKyAgICAgICAgdmFyIGhhbmRsZVRhYktleSA9IHRoaXMuX21haW5QYW5l
bC5oYW5kbGVUYWJLZXlQcmVzcy5iaW5kKHRoaXMuX21haW5QYW5lbCwgMCk7CisgICAgICAgIHZh
ciBoYW5kbGVTaGlmdFRhYktleSA9IHRoaXMuX21haW5QYW5lbC5oYW5kbGVUYWJLZXlQcmVzcy5i
aW5kKHRoaXMuX21haW5QYW5lbCwgMSk7CisgICAgICAgIHRoaXMuX3Nob3J0Y3V0c1tXZWJJbnNw
ZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5tYWtlS2V5KGtleXMuVGFiLmNvZGUpXSA9IGhhbmRsZVRh
YktleTsKKyAgICAgICAgdGhpcy5fc2hvcnRjdXRzW1dlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0
Y3V0Lm1ha2VLZXkoa2V5cy5UYWIuY29kZSwgbW9kaWZpZXJzLlNoaWZ0KV0gPSBoYW5kbGVTaGlm
dFRhYktleTsKICAgICB9LAogCiAgICAgX2hhbmRsZUtleURvd246IGZ1bmN0aW9uKGUpCkBAIC0y
ODEsMTEgKzI4Niw2IEBAIFdlYkluc3BlY3Rvci5UZXh0Vmlld2VyLnByb3RvdHlwZSA9IHsKICAg
ICAgICAgdGhpcy5fbWFpblBhbmVsLnJlYWRPbmx5ID0gdHJ1ZTsKICAgICAgICAgdGhpcy5fZGVs
ZWdhdGUuY2FuY2VsRWRpdGluZygpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9LAotCi0g
ICAgX2hhbmRsZVVuZG9SZWRvOiBmdW5jdGlvbihyZWRvKQotICAgIHsKLSAgICAgICAgcmV0dXJu
IHRoaXMuX21haW5QYW5lbC5oYW5kbGVVbmRvUmVkbyhyZWRvKTsKICAgICB9CiB9CiAKQEAgLTkx
Niw3ICs5MTYsNyBAQCBXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5cGUg
PSB7CiAKICAgICAgICAgdmFyIHJhbmdlID0gcmVkbyA/IHRoaXMuX3RleHRNb2RlbC5yZWRvKGNh
bGxiYWNrKSA6IHRoaXMuX3RleHRNb2RlbC51bmRvKGNhbGxiYWNrKTsKICAgICAgICAgaWYgKHJh
bmdlKQotICAgICAgICAgICAgdGhpcy5fcmVzdG9yZVNlbGVjdGlvbihuZXcgV2ViSW5zcGVjdG9y
LlRleHRSYW5nZShyYW5nZS5lbmRMaW5lLCByYW5nZS5lbmRDb2x1bW4sIHJhbmdlLmVuZExpbmUs
IHJhbmdlLmVuZENvbHVtbiksIHRydWUpOworICAgICAgICAgICAgdGhpcy5fc2V0Q2FyZXRMb2Nh
dGlvbihyYW5nZS5lbmRMaW5lLCByYW5nZS5lbmRDb2x1bW4sIHRydWUpOwogCiAgICAgICAgIHRo
aXMuX2V4aXRUZXh0Q2hhbmdlTW9kZShudWxsLCBudWxsKTsKICAgICAgICAgdGhpcy5lbmRVcGRh
dGVzKCk7CkBAIC05MjQsNiArOTI0LDM0IEBAIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBh
bmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfSwKIAorICAgIGhh
bmRsZVRhYktleVByZXNzOiBmdW5jdGlvbihzaGlmdEtleSkKKyAgICB7CisgICAgICAgIGlmICh0
aGlzLl9yZWFkT25seSB8fCB0aGlzLl9kaXJ0eUxpbmVzKQorICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOworCisgICAgICAgIHZhciBzZWxlY3Rpb24gPSB0aGlzLl9nZXRTZWxlY3Rpb24oKTsKKyAg
ICAgICAgaWYgKCFzZWxlY3Rpb24pCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAg
ICAgaWYgKHNoaWZ0S2V5KQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICAgICAgdGhp
cy5iZWdpblVwZGF0ZXMoKTsKKyAgICAgICAgdGhpcy5fZW50ZXJUZXh0Q2hhbmdlTW9kZSgpOwor
CisgICAgICAgIHZhciByYW5nZSA9IHNlbGVjdGlvbjsKKyAgICAgICAgaWYgKHJhbmdlLnN0YXJ0
TGluZSA+IHJhbmdlLmVuZExpbmUgfHwgKHJhbmdlLnN0YXJ0TGluZSA9PT0gcmFuZ2UuZW5kTGlu
ZSAmJiByYW5nZS5zdGFydENvbHVtbiA+IHJhbmdlLmVuZENvbHVtbikpCisgICAgICAgICAgICBy
YW5nZSA9IG5ldyBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlKHJhbmdlLmVuZExpbmUsIHJhbmdlLmVu
ZENvbHVtbiwgcmFuZ2Uuc3RhcnRMaW5lLCByYW5nZS5zdGFydENvbHVtbik7CisKKyAgICAgICAg
dmFyIG5ld1JhbmdlID0gdGhpcy5fc2V0VGV4dChyYW5nZSwgIlx0Iik7CisKKyAgICAgICAgdGhp
cy5fZXhpdFRleHRDaGFuZ2VNb2RlKHJhbmdlLCBuZXdSYW5nZSk7CisgICAgICAgIHRoaXMuZW5k
VXBkYXRlcygpOworCisgICAgICAgIHRoaXMuX3NldENhcmV0TG9jYXRpb24obmV3UmFuZ2UuZW5k
TGluZSwgbmV3UmFuZ2UuZW5kQ29sdW1uKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfSwK
KwogICAgIF9zcGxpdENodW5rT25BTGluZTogZnVuY3Rpb24obGluZU51bWJlciwgY2h1bmtOdW1i
ZXIpCiAgICAgewogICAgICAgICB2YXIgc2VsZWN0aW9uID0gdGhpcy5fZ2V0U2VsZWN0aW9uKCk7
CkBAIC0xMjA2LDYgKzEyMzQsMTIgQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwu
cHJvdG90eXBlID0gewogICAgICAgICB9CiAgICAgfSwKIAorICAgIF9zZXRDYXJldExvY2F0aW9u
OiBmdW5jdGlvbihsaW5lLCBjb2x1bW4sIHNjcm9sbEludG9WaWV3KQorICAgIHsKKyAgICAgICAg
dmFyIHJhbmdlID0gbmV3IFdlYkluc3BlY3Rvci5UZXh0UmFuZ2UobGluZSwgY29sdW1uLCBsaW5l
LCBjb2x1bW4pOworICAgICAgICB0aGlzLl9yZXN0b3JlU2VsZWN0aW9uKHJhbmdlLCBzY3JvbGxJ
bnRvVmlldyk7CisgICAgfSwKKwogICAgIF9zZWxlY3Rpb25Ub1Bvc2l0aW9uOiBmdW5jdGlvbihj
b250YWluZXIsIG9mZnNldCkKICAgICB7CiAgICAgICAgIGlmIChjb250YWluZXIgPT09IHRoaXMu
X2NvbnRhaW5lciAmJiBvZmZzZXQgPT09IDApCkBAIC0xNDg1LDEyICsxNTE5LDggQEAgV2ViSW5z
cGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICBlbHNlCiAg
ICAgICAgICAgICB2YXIgb2xkUmFuZ2UgPSBuZXcgV2ViSW5zcGVjdG9yLlRleHRSYW5nZShzdGFy
dExpbmUsIHN0YXJ0Q29sdW1uLCBlbmRMaW5lIC0gMSwgZW5kQ29sdW1uKTsKIAotICAgICAgICBp
ZiAodGhpcy5fbGFzdEVkaXRlZFJhbmdlICYmIChsaW5lcy5sZW5ndGggIT09IDEgfHwgdGhpcy5f
bGFzdEVkaXRlZFJhbmdlLmVuZExpbmUgIT09IG9sZFJhbmdlLnN0YXJ0TGluZSB8fCB0aGlzLl9s
YXN0RWRpdGVkUmFuZ2UuZW5kQ29sdW1uICE9PSBvbGRSYW5nZS5zdGFydENvbHVtbikpCi0gICAg
ICAgICAgICB0aGlzLl90ZXh0TW9kZWwubWFya1VuZG9hYmxlU3RhdGUoKTsKLQotICAgICAgICB2
YXIgbmV3UmFuZ2UgPSB0aGlzLl90ZXh0TW9kZWwuc2V0VGV4dChvbGRSYW5nZSwgbGluZXMuam9p
bigiXG4iKSk7Ci0gICAgICAgIHRoaXMuX2xhc3RFZGl0ZWRSYW5nZSA9IG5ld1JhbmdlOwotCisg
ICAgICAgIHZhciBuZXdSYW5nZSA9IHRoaXMuX3NldFRleHQob2xkUmFuZ2UsIGxpbmVzLmpvaW4o
IlxuIikpOworICAgICAgICAKICAgICAgICAgdGhpcy5fcGFpbnRTY2hlZHVsZWRMaW5lcyh0cnVl
KTsKICAgICAgICAgdGhpcy5fcmVzdG9yZVNlbGVjdGlvbihzZWxlY3Rpb24pOwogCkBAIC0xNTA2
LDYgKzE1MzYsMTcgQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBl
ID0gewogICAgICAgICB0aGlzLmVuZERvbVVwZGF0ZXMoKTsKICAgICB9LAogCisgICAgX3NldFRl
eHQ6IGZ1bmN0aW9uKHJhbmdlLCB0ZXh0KQorICAgIHsKKyAgICAgICAgaWYgKHRoaXMuX2xhc3RF
ZGl0ZWRSYW5nZSAmJiAoIXRleHQgfHwgdGV4dC5pbmRleE9mKCJcbiIpICE9PSAtMSB8fCB0aGlz
Ll9sYXN0RWRpdGVkUmFuZ2UuZW5kTGluZSAhPT0gcmFuZ2Uuc3RhcnRMaW5lIHx8IHRoaXMuX2xh
c3RFZGl0ZWRSYW5nZS5lbmRDb2x1bW4gIT09IHJhbmdlLnN0YXJ0Q29sdW1uKSkKKyAgICAgICAg
ICAgIHRoaXMuX3RleHRNb2RlbC5tYXJrVW5kb2FibGVTdGF0ZSgpOworCisgICAgICAgIHZhciBu
ZXdSYW5nZSA9IHRoaXMuX3RleHRNb2RlbC5zZXRUZXh0KHJhbmdlLCB0ZXh0KTsKKyAgICAgICAg
dGhpcy5fbGFzdEVkaXRlZFJhbmdlID0gbmV3UmFuZ2U7CisKKyAgICAgICAgcmV0dXJuIG5ld1Jh
bmdlOworICAgIH0sCisKICAgICBfcmVtb3ZlRGVjb3JhdGlvbnNJblJhbmdlOiBmdW5jdGlvbihy
YW5nZSkKICAgICB7CiAgICAgICAgIGZvciAodmFyIGkgPSB0aGlzLl9jaHVua051bWJlckZvckxp
bmUocmFuZ2Uuc3RhcnRMaW5lKTsgaSA8IHRoaXMuX3RleHRDaHVua3MubGVuZ3RoOyArK2kpIHsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>90022</attachid>
            <date>2011-04-18 05:49:22 -0700</date>
            <delta_ts>2011-04-18 06:36:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58537-20110418164919.patch</filename>
            <type>text/plain</type>
            <size>6345</size>
            <attacher name="Andrey Adaikin">aandrey</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODQxMjMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBiZGQyNTFkZTc3NDY5MDRl
NTc3ZmFiZjkyMmVmZGJjMjRkNWRjYWQzLi5iYmRlMjc0MDBmNDdkNTFlNTBhODI0OWM4ODA2MTFi
ZjVmM2U2MzlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDQtMTggIEFuZHJl
eSBBZGFpa2luICA8YWFuZHJleUBnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFRBQiBzaG91bGQgbm90IG1v
dmUgZm9jdXMgZnJvbSB0aGUgdGV4dCBlZGl0b3Igd2hpbGUgbGl2ZSBlZGl0aW5nCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODUzNworCisgICAgICAg
ICogaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0Vmlld2VyLmpzOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlRleHRWaWV3ZXIucHJvdG90eXBlLl9yZWdpc3RlclNob3J0Y3V0cyk6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuVGV4dFZpZXdlci5wcm90b3R5cGUuX2NhbmNlbEVkaXRpbmcpOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlLmhhbmRsZVVuZG9S
ZWRvKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsLnByb3RvdHlw
ZS5oYW5kbGVUYWJLZXlQcmVzcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1h
aW5QYW5lbC5wcm90b3R5cGUuX3NldENhcmV0TG9jYXRpb24pOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlLl9hcHBseURvbVVwZGF0ZXMpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlLl9zZXRUZXh0
KToKKwogMjAxMS0wNC0xNyAgVGhpZXJyeSBSZWRpbmcgIDx0aGllcnJ5LnJlZGluZ0Bhdmlvbmlj
LWRlc2lnbi5kZT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0Vmlld2VyLmpzIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0Vmlld2VyLmpzCmluZGV4IGMxZGNl
OWYxMGZlZDU0Njk3NGExM2MyNDQ2ZTM0Y2UyMWRmMmFkZjguLjFiNDBiM2VhZmZkZjVhYmM0NGZk
ZDMxYTg4ZGFhZWUwODNkNTcxYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvVGV4dFZpZXdlci5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL1RleHRWaWV3ZXIuanMKQEAgLTI1MywxMCArMjUzLDE1IEBAIFdlYkluc3BlY3Rv
ci5UZXh0Vmlld2VyLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5fc2hvcnRjdXRzW1dlYklu
c3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0Lm1ha2VLZXkoa2V5cy5FbnRlci5jb2RlLCBtb2RpZmll
cnMuQ3RybE9yTWV0YSldID0gY29tbWl0RWRpdGluZzsKICAgICAgICAgdGhpcy5fc2hvcnRjdXRz
W1dlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0Lm1ha2VLZXkoa2V5cy5Fc2MuY29kZSldID0g
Y2FuY2VsRWRpdGluZzsKIAotICAgICAgICB2YXIgaGFuZGxlVW5kbyA9IHRoaXMuX2hhbmRsZVVu
ZG9SZWRvLmJpbmQodGhpcywgMCk7Ci0gICAgICAgIHZhciBoYW5kbGVSZWRvID0gdGhpcy5faGFu
ZGxlVW5kb1JlZG8uYmluZCh0aGlzLCAxKTsKKyAgICAgICAgdmFyIGhhbmRsZVVuZG8gPSB0aGlz
Ll9tYWluUGFuZWwuaGFuZGxlVW5kb1JlZG8uYmluZCh0aGlzLl9tYWluUGFuZWwsIGZhbHNlKTsK
KyAgICAgICAgdmFyIGhhbmRsZVJlZG8gPSB0aGlzLl9tYWluUGFuZWwuaGFuZGxlVW5kb1JlZG8u
YmluZCh0aGlzLl9tYWluUGFuZWwsIHRydWUpOwogICAgICAgICB0aGlzLl9zaG9ydGN1dHNbV2Vi
SW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQubWFrZUtleSgieiIsIG1vZGlmaWVycy5DdHJsT3JN
ZXRhKV0gPSBoYW5kbGVVbmRvOwogICAgICAgICB0aGlzLl9zaG9ydGN1dHNbV2ViSW5zcGVjdG9y
LktleWJvYXJkU2hvcnRjdXQubWFrZUtleSgieiIsIG1vZGlmaWVycy5TaGlmdCB8IG1vZGlmaWVy
cy5DdHJsT3JNZXRhKV0gPSBoYW5kbGVSZWRvOworCisgICAgICAgIHZhciBoYW5kbGVUYWJLZXkg
PSB0aGlzLl9tYWluUGFuZWwuaGFuZGxlVGFiS2V5UHJlc3MuYmluZCh0aGlzLl9tYWluUGFuZWws
IGZhbHNlKTsKKyAgICAgICAgdmFyIGhhbmRsZVNoaWZ0VGFiS2V5ID0gdGhpcy5fbWFpblBhbmVs
LmhhbmRsZVRhYktleVByZXNzLmJpbmQodGhpcy5fbWFpblBhbmVsLCB0cnVlKTsKKyAgICAgICAg
dGhpcy5fc2hvcnRjdXRzW1dlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0Lm1ha2VLZXkoa2V5
cy5UYWIuY29kZSldID0gaGFuZGxlVGFiS2V5OworICAgICAgICB0aGlzLl9zaG9ydGN1dHNbV2Vi
SW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQubWFrZUtleShrZXlzLlRhYi5jb2RlLCBtb2RpZmll
cnMuU2hpZnQpXSA9IGhhbmRsZVNoaWZ0VGFiS2V5OwogICAgIH0sCiAKICAgICBfaGFuZGxlS2V5
RG93bjogZnVuY3Rpb24oZSkKQEAgLTI5NCwxMSArMjk5LDYgQEAgV2ViSW5zcGVjdG9yLlRleHRW
aWV3ZXIucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLnJlYWRPbmx5ID0gdHJ1ZTsKICAgICAg
ICAgdGhpcy5fZGVsZWdhdGUuY2FuY2VsRWRpdGluZygpOwogICAgICAgICByZXR1cm4gdHJ1ZTsK
LSAgICB9LAotCi0gICAgX2hhbmRsZVVuZG9SZWRvOiBmdW5jdGlvbihyZWRvKQotICAgIHsKLSAg
ICAgICAgcmV0dXJuIHRoaXMuX21haW5QYW5lbC5oYW5kbGVVbmRvUmVkbyhyZWRvKTsKICAgICB9
CiB9CiAKQEAgLTkzNyw3ICs5MzcsNyBAQCBXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5QYW5l
bC5wcm90b3R5cGUgPSB7CiAKICAgICAgICAgdmFyIHJhbmdlID0gcmVkbyA/IHRoaXMuX3RleHRN
b2RlbC5yZWRvKGNhbGxiYWNrKSA6IHRoaXMuX3RleHRNb2RlbC51bmRvKGNhbGxiYWNrKTsKICAg
ICAgICAgaWYgKHJhbmdlKQotICAgICAgICAgICAgdGhpcy5fcmVzdG9yZVNlbGVjdGlvbihuZXcg
V2ViSW5zcGVjdG9yLlRleHRSYW5nZShyYW5nZS5lbmRMaW5lLCByYW5nZS5lbmRDb2x1bW4sIHJh
bmdlLmVuZExpbmUsIHJhbmdlLmVuZENvbHVtbiksIHRydWUpOworICAgICAgICAgICAgdGhpcy5f
c2V0Q2FyZXRMb2NhdGlvbihyYW5nZS5lbmRMaW5lLCByYW5nZS5lbmRDb2x1bW4sIHRydWUpOwog
CiAgICAgICAgIHRoaXMuX2V4aXRUZXh0Q2hhbmdlTW9kZShudWxsLCBudWxsKTsKICAgICAgICAg
dGhpcy5lbmRVcGRhdGVzKCk7CkBAIC05NDUsNiArOTQ1LDM0IEBAIFdlYkluc3BlY3Rvci5UZXh0
RWRpdG9yTWFpblBhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAg
fSwKIAorICAgIGhhbmRsZVRhYktleVByZXNzOiBmdW5jdGlvbihzaGlmdEtleSkKKyAgICB7Cisg
ICAgICAgIGlmICh0aGlzLl9yZWFkT25seSB8fCB0aGlzLl9kaXJ0eUxpbmVzKQorICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIHZhciBzZWxlY3Rpb24gPSB0aGlzLl9nZXRTZWxl
Y3Rpb24oKTsKKyAgICAgICAgaWYgKCFzZWxlY3Rpb24pCisgICAgICAgICAgICByZXR1cm4gZmFs
c2U7CisKKyAgICAgICAgaWYgKHNoaWZ0S2V5KQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisK
KyAgICAgICAgdGhpcy5iZWdpblVwZGF0ZXMoKTsKKyAgICAgICAgdGhpcy5fZW50ZXJUZXh0Q2hh
bmdlTW9kZSgpOworCisgICAgICAgIHZhciByYW5nZSA9IHNlbGVjdGlvbjsKKyAgICAgICAgaWYg
KHJhbmdlLnN0YXJ0TGluZSA+IHJhbmdlLmVuZExpbmUgfHwgKHJhbmdlLnN0YXJ0TGluZSA9PT0g
cmFuZ2UuZW5kTGluZSAmJiByYW5nZS5zdGFydENvbHVtbiA+IHJhbmdlLmVuZENvbHVtbikpCisg
ICAgICAgICAgICByYW5nZSA9IG5ldyBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlKHJhbmdlLmVuZExp
bmUsIHJhbmdlLmVuZENvbHVtbiwgcmFuZ2Uuc3RhcnRMaW5lLCByYW5nZS5zdGFydENvbHVtbik7
CisKKyAgICAgICAgdmFyIG5ld1JhbmdlID0gdGhpcy5fc2V0VGV4dChyYW5nZSwgIlx0Iik7CisK
KyAgICAgICAgdGhpcy5fZXhpdFRleHRDaGFuZ2VNb2RlKHJhbmdlLCBuZXdSYW5nZSk7CisgICAg
ICAgIHRoaXMuZW5kVXBkYXRlcygpOworCisgICAgICAgIHRoaXMuX3NldENhcmV0TG9jYXRpb24o
bmV3UmFuZ2UuZW5kTGluZSwgbmV3UmFuZ2UuZW5kQ29sdW1uLCB0cnVlKTsKKyAgICAgICAgcmV0
dXJuIHRydWU7CisgICAgfSwKKwogICAgIF9zcGxpdENodW5rT25BTGluZTogZnVuY3Rpb24obGlu
ZU51bWJlciwgY2h1bmtOdW1iZXIpCiAgICAgewogICAgICAgICB2YXIgc2VsZWN0aW9uID0gdGhp
cy5fZ2V0U2VsZWN0aW9uKCk7CkBAIC0xMjI3LDYgKzEyNTUsMTIgQEAgV2ViSW5zcGVjdG9yLlRl
eHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB9CiAgICAgfSwKIAorICAg
IF9zZXRDYXJldExvY2F0aW9uOiBmdW5jdGlvbihsaW5lLCBjb2x1bW4sIHNjcm9sbEludG9WaWV3
KQorICAgIHsKKyAgICAgICAgdmFyIHJhbmdlID0gbmV3IFdlYkluc3BlY3Rvci5UZXh0UmFuZ2Uo
bGluZSwgY29sdW1uLCBsaW5lLCBjb2x1bW4pOworICAgICAgICB0aGlzLl9yZXN0b3JlU2VsZWN0
aW9uKHJhbmdlLCBzY3JvbGxJbnRvVmlldyk7CisgICAgfSwKKwogICAgIF9zZWxlY3Rpb25Ub1Bv
c2l0aW9uOiBmdW5jdGlvbihjb250YWluZXIsIG9mZnNldCkKICAgICB7CiAgICAgICAgIGlmIChj
b250YWluZXIgPT09IHRoaXMuX2NvbnRhaW5lciAmJiBvZmZzZXQgPT09IDApCkBAIC0xNTA2LDEy
ICsxNTQwLDggQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlID0g
ewogICAgICAgICBlbHNlCiAgICAgICAgICAgICB2YXIgb2xkUmFuZ2UgPSBuZXcgV2ViSW5zcGVj
dG9yLlRleHRSYW5nZShzdGFydExpbmUsIHN0YXJ0Q29sdW1uLCBlbmRMaW5lIC0gMSwgZW5kQ29s
dW1uKTsKIAotICAgICAgICBpZiAodGhpcy5fbGFzdEVkaXRlZFJhbmdlICYmIChsaW5lcy5sZW5n
dGggIT09IDEgfHwgdGhpcy5fbGFzdEVkaXRlZFJhbmdlLmVuZExpbmUgIT09IG9sZFJhbmdlLnN0
YXJ0TGluZSB8fCB0aGlzLl9sYXN0RWRpdGVkUmFuZ2UuZW5kQ29sdW1uICE9PSBvbGRSYW5nZS5z
dGFydENvbHVtbikpCi0gICAgICAgICAgICB0aGlzLl90ZXh0TW9kZWwubWFya1VuZG9hYmxlU3Rh
dGUoKTsKLQotICAgICAgICB2YXIgbmV3UmFuZ2UgPSB0aGlzLl90ZXh0TW9kZWwuc2V0VGV4dChv
bGRSYW5nZSwgbGluZXMuam9pbigiXG4iKSk7Ci0gICAgICAgIHRoaXMuX2xhc3RFZGl0ZWRSYW5n
ZSA9IG5ld1JhbmdlOwotCisgICAgICAgIHZhciBuZXdSYW5nZSA9IHRoaXMuX3NldFRleHQob2xk
UmFuZ2UsIGxpbmVzLmpvaW4oIlxuIikpOworICAgICAgICAKICAgICAgICAgdGhpcy5fcGFpbnRT
Y2hlZHVsZWRMaW5lcyh0cnVlKTsKICAgICAgICAgdGhpcy5fcmVzdG9yZVNlbGVjdGlvbihzZWxl
Y3Rpb24pOwogCkBAIC0xNTI3LDYgKzE1NTcsMTcgQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JN
YWluUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLmVuZERvbVVwZGF0ZXMoKTsKICAg
ICB9LAogCisgICAgX3NldFRleHQ6IGZ1bmN0aW9uKHJhbmdlLCB0ZXh0KQorICAgIHsKKyAgICAg
ICAgaWYgKHRoaXMuX2xhc3RFZGl0ZWRSYW5nZSAmJiAoIXRleHQgfHwgdGV4dC5pbmRleE9mKCJc
biIpICE9PSAtMSB8fCB0aGlzLl9sYXN0RWRpdGVkUmFuZ2UuZW5kTGluZSAhPT0gcmFuZ2Uuc3Rh
cnRMaW5lIHx8IHRoaXMuX2xhc3RFZGl0ZWRSYW5nZS5lbmRDb2x1bW4gIT09IHJhbmdlLnN0YXJ0
Q29sdW1uKSkKKyAgICAgICAgICAgIHRoaXMuX3RleHRNb2RlbC5tYXJrVW5kb2FibGVTdGF0ZSgp
OworCisgICAgICAgIHZhciBuZXdSYW5nZSA9IHRoaXMuX3RleHRNb2RlbC5zZXRUZXh0KHJhbmdl
LCB0ZXh0KTsKKyAgICAgICAgdGhpcy5fbGFzdEVkaXRlZFJhbmdlID0gbmV3UmFuZ2U7CisKKyAg
ICAgICAgcmV0dXJuIG5ld1JhbmdlOworICAgIH0sCisKICAgICBfcmVtb3ZlRGVjb3JhdGlvbnNJ
blJhbmdlOiBmdW5jdGlvbihyYW5nZSkKICAgICB7CiAgICAgICAgIGZvciAodmFyIGkgPSB0aGlz
Ll9jaHVua051bWJlckZvckxpbmUocmFuZ2Uuc3RhcnRMaW5lKTsgaSA8IHRoaXMuX3RleHRDaHVu
a3MubGVuZ3RoOyArK2kpIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>