<?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>52472</bug_id>
          
          <creation_ts>2011-01-14 13:06:14 -0800</creation_ts>
          <short_desc>Web Inspector: simplify debugger enabling routine.</short_desc>
          <delta_ts>2011-01-17 06:31:39 -0800</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>1</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>commit-queue</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>334540</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-01-14 13:06:14 -0800</bug_when>
    <thetext>Patch to follow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334563</commentid>
    <comment_count>1</comment_count>
      <attachid>78989</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-01-14 13:38:48 -0800</bug_when>
    <thetext>Created attachment 78989
[PATCH] Proposed change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334597</commentid>
    <comment_count>2</comment_count>
      <attachid>78989</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2011-01-14 14:04:56 -0800</bug_when>
    <thetext>Comment on attachment 78989
[PATCH] Proposed change

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

&gt; WebKit2/WebProcess/WebPage/WebInspector.cpp:104
&gt;  void WebInspector::startJavaScriptDebugging()
&gt;  {
&gt;  #if ENABLE(JAVASCRIPT_DEBUGGER)
&gt; -    m_page-&gt;corePage()-&gt;inspectorController()-&gt;showPanel(InspectorController::ScriptsPanel);
&gt; -    m_page-&gt;corePage()-&gt;inspectorController()-&gt;enableDebugger();
&gt; +    m_page-&gt;corePage()-&gt;inspectorController()-&gt;showAndEnableDebugger();
&gt;  #endif
&gt;  }

please use InspectorInstrumentation here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334863</commentid>
    <comment_count>3</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-01-14 22:57:25 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 78989 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=78989&amp;action=review
&gt; 
&gt; &gt; WebKit2/WebProcess/WebPage/WebInspector.cpp:104
&gt; &gt;  void WebInspector::startJavaScriptDebugging()
&gt; &gt;  {
&gt; &gt;  #if ENABLE(JAVASCRIPT_DEBUGGER)
&gt; &gt; -    m_page-&gt;corePage()-&gt;inspectorController()-&gt;showPanel(InspectorController::ScriptsPanel);
&gt; &gt; -    m_page-&gt;corePage()-&gt;inspectorController()-&gt;enableDebugger();
&gt; &gt; +    m_page-&gt;corePage()-&gt;inspectorController()-&gt;showAndEnableDebugger();
&gt; &gt;  #endif
&gt; &gt;  }
&gt; 
&gt; please use InspectorInstrumentation here.

This is not a part of the instrumentation, this is rather a control call form the WebKit to the inspector controller. A rare case where we need to talk to the &apos;inspector controller for host&apos; interface (as opposed to &apos;inspector instrumentation for webcore&apos; interface). At this moment, all such methods are defined on the inspector controller itself.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334869</commentid>
    <comment_count>4</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2011-01-15 00:05:57 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; (From update of attachment 78989 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=78989&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; WebKit2/WebProcess/WebPage/WebInspector.cpp:104
&gt; &gt; &gt;  void WebInspector::startJavaScriptDebugging()
&gt; &gt; &gt;  {
&gt; &gt; &gt;  #if ENABLE(JAVASCRIPT_DEBUGGER)
&gt; &gt; &gt; -    m_page-&gt;corePage()-&gt;inspectorController()-&gt;showPanel(InspectorController::ScriptsPanel);
&gt; &gt; &gt; -    m_page-&gt;corePage()-&gt;inspectorController()-&gt;enableDebugger();
&gt; &gt; &gt; +    m_page-&gt;corePage()-&gt;inspectorController()-&gt;showAndEnableDebugger();
&gt; &gt; &gt;  #endif
&gt; &gt; &gt;  }
&gt; &gt; 
&gt; &gt; please use InspectorInstrumentation here.
&gt; 
&gt; This is not a part of the instrumentation, this is rather a control call form the WebKit to the inspector controller. A rare case where we need to talk to the &apos;inspector controller for host&apos; interface (as opposed to &apos;inspector instrumentation for webcore&apos; interface). At this moment, all such methods are defined on the inspector controller itself.

this is preventing us remove InspectorController from the inspector&apos;s WebCore interface.
Right now we are using inspectorController as a master-agent in Frontend to Backend API and also as a part of Inspector WebKit/WebCore API. I think it&apos;d be better to split these roles.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334879</commentid>
    <comment_count>5</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-01-15 03:14:44 -0800</bug_when>
    <thetext>&gt; this is preventing us remove InspectorController from the inspector&apos;s WebCore interface.
&gt; Right now we are using inspectorController as a master-agent in Frontend to Backend API and also as a part of Inspector WebKit/WebCore API. I think it&apos;d be better to split these roles.

That&apos;s right. And that&apos;s why about a year ago I introduced &apos;InspectorBackend&apos; interface that was covering  &apos;inspector controller for the front-end&apos; part of the API. Ironically, it was you to move all the stuff back into the inspector controller from the backend and it ended up nuked. I was reluctant to it back then and I think we should just re-introduce it now. InspectorBackend and InspectorController will stay highly coupled due to ability to turn on and of capabilities such as debugging, but that is Ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334880</commentid>
    <comment_count>6</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-01-15 03:19:59 -0800</bug_when>
    <thetext>To summarize:

- InspectorInstrumentation:: should only be used for instrumentation, not for controlling inspector, so comment #2 is wrong.
- The InspectorController vs InspectorBackend question is orthogonal to this change, it should be fixed separately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334886</commentid>
    <comment_count>7</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2011-01-15 06:02:01 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; &gt; this is preventing us remove InspectorController from the inspector&apos;s WebCore interface.
&gt; &gt; Right now we are using inspectorController as a master-agent in Frontend to Backend API and also as a part of Inspector WebKit/WebCore API. I think it&apos;d be better to split these roles.
&gt; 
&gt; That&apos;s right. And that&apos;s why about a year ago I introduced &apos;InspectorBackend&apos; interface that was covering  &apos;inspector controller for the front-end&apos; part of the API. Ironically, it was you to move all the stuff back into the inspector controller from the backend and it ended up nuked. I was reluctant to it back then and I think we should just re-introduce it now. InspectorBackend and InspectorController will stay highly coupled due to ability to turn on and of capabilities such as debugging, but that is Ok.

The plan described in 52510 is much better than previous try with InspectorBackend and I absolutely agree with this plan.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334889</commentid>
    <comment_count>8</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-01-15 08:48:58 -0800</bug_when>
    <thetext>&gt; The plan described in 52510 is much better than previous try with InspectorBackend and I absolutely agree with this plan.

I agree. Now that we have instrumentation API and agents, it all looks much more solid.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335258</commentid>
    <comment_count>9</comment_count>
      <attachid>78989</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-01-17 04:58:37 -0800</bug_when>
    <thetext>Comment on attachment 78989
[PATCH] Proposed change

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

&gt; Source/WebCore/inspector/InspectorController.cpp:1051
&gt; +    if (debuggerEnabled())

Make sure that Scripts panel will be brought to front in case debugger was already enabled</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335293</commentid>
    <comment_count>10</comment_count>
      <attachid>78989</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-17 06:31:34 -0800</bug_when>
    <thetext>Comment on attachment 78989
[PATCH] Proposed change

Clearing flags on attachment: 78989

Committed r75939: &lt;http://trac.webkit.org/changeset/75939&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335294</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-17 06:31:39 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78989</attachid>
            <date>2011-01-14 13:38:48 -0800</date>
            <delta_ts>2011-01-17 06:31:34 -0800</delta_ts>
            <desc>[PATCH] Proposed change</desc>
            <filename>debug_enable</filename>
            <type>text/plain</type>
            <size>11308</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0NjVmZmY5Li43MmE2NWRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjMg
QEAKIDIwMTEtMDEtMTQgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CiAK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViIEluc3Bl
Y3Rvcjogc2ltcGxpZnkgZGVidWdnZXIgZW5hYmxpbmcgcm91dGluZS4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyNDcyCisKKyAgICAgICAgKiBpbnNw
ZWN0b3IvSW5zcGVjdG9yLmlkbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJv
bGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpyZXN0b3Jl
RGVidWdnZXIpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6c2hvd0Fu
ZEVuYWJsZURlYnVnZ2VyKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6
OmVuYWJsZURlYnVnZ2VyKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxl
ci5oOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRGVidWdnZXJNb2RlbC5qczoKKyAg
ICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qczoKKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlLnNob3cpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUuX3RvZ2dsZURlYnVnZ2luZyk6CisKKzIwMTEt
MDEtMTQgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CisKICAgICAgICAg
Tm90IHJldmlld2VkLiBGb2xsb3cgdXAgdG8gcjc1NzkxOiBmaXggbWlzc2luZyBkaXNwYXRjaC4K
ICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyNDQyCiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5leHAuaW4KaW5kZXggOTdlZjliNi4uODQ2YWNiYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5l
eHAuaW4KQEAgLTEzNDcsNyArMTM0Nyw3IEBAIF9fWk43V2ViQ29yZTE1SW5zcGVjdG9yQ2xpZW50
MzFkb0Rpc3BhdGNoTWVzc2FnZU9uRnJvbnRlbmRQYWdlRVBOU180UGFnZUVSS04zV1RGCiBfX1pO
N1dlYkNvcmUxOUluc3BlY3RvckNvbnRyb2xsZXIxMkNvbnNvbGVQYW5lbEUKIF9fWk43V2ViQ29y
ZTE5SW5zcGVjdG9yQ29udHJvbGxlcjEyU2NyaXB0c1BhbmVsRQogX19aTjdXZWJDb3JlMTlJbnNw
ZWN0b3JDb250cm9sbGVyMTNQcm9maWxlc1BhbmVsRQotX19aTjdXZWJDb3JlMTlJbnNwZWN0b3JD
b250cm9sbGVyMTRlbmFibGVEZWJ1Z2dlckV2CitfX1pON1dlYkNvcmUxOUluc3BlY3RvckNvbnRy
b2xsZXIyMXNob3dBbmRFbmFibGVEZWJ1Z2dlckV2CiBfX1pON1dlYkNvcmUxOUluc3BlY3RvckNv
bnRyb2xsZXIxNGVuYWJsZVByb2ZpbGVyRWJiCiBfX1pON1dlYkNvcmUxOUluc3BlY3RvckNvbnRy
b2xsZXIxNWRpc2FibGVEZWJ1Z2dlckViCiBfX1pON1dlYkNvcmUxOUluc3BlY3RvckNvbnRyb2xs
ZXIxNWRpc2FibGVQcm9maWxlckViCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuaWRs
CmluZGV4IDA1Yzg4NDkuLjY1NjM1MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3IuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3IuaWRsCkBAIC0yMjEsNyArMjIxLDcgQEAgbW9kdWxlIGNvcmUgewogICAgICAgICAvLyBEZWJ1
Z2dlciBBUEkKICAgICAgICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KIAotICAgICAgICBbZG9tYWluPUluc3Bl
Y3Rvcl0gdm9pZCBlbmFibGVEZWJ1Z2dlckZyb21Gcm9udGVuZChpbiBib29sZWFuIGFsd2F5cyk7
CisgICAgICAgIFtkb21haW49SW5zcGVjdG9yXSB2b2lkIGVuYWJsZURlYnVnZ2VyKGluIGJvb2xl
YW4gYWx3YXlzKTsKICAgICAgICAgW2RvbWFpbj1JbnNwZWN0b3JdIHZvaWQgZGlzYWJsZURlYnVn
Z2VyKGluIGJvb2xlYW4gYWx3YXlzKTsKIAogICAgICAgICBbZG9tYWluPUluc3BlY3Rvcl0gdm9p
ZCBzZXRTdGlja3lCcmVha3BvaW50cyhpbiBPYmplY3QgYnJlYWtwb2ludHMpOwpAQCAtMjI5LDgg
KzIyOSw2IEBAIG1vZHVsZSBjb3JlIHsKICAgICAgICAgW25vdGlmeSwgZG9tYWluPURlYnVnZ2Vy
XSB2b2lkIGRlYnVnZ2VyV2FzRW5hYmxlZCgpOwogICAgICAgICBbbm90aWZ5LCBkb21haW49RGVi
dWdnZXJdIHZvaWQgZGVidWdnZXJXYXNEaXNhYmxlZCgpOwogCi0gICAgICAgIFtub3RpZnksIGRv
bWFpbj1EZWJ1Z2dlcl0gdm9pZCBhdHRhY2hEZWJ1Z2dlcldoZW5TaG93bigpOyAvLyBGSVhNRTog
ZG8gc29tZXRoaW5nIHdpdGggdGhpcyBldmVudHVhbGx5LgotCiAgICAgICAgIFtub3RpZnksIGRv
bWFpbj1EZWJ1Z2dlcl0gdm9pZCBwYXJzZWRTY3JpcHRTb3VyY2Uob3V0IFN0cmluZyBzb3VyY2VJ
RCwgb3V0IFN0cmluZyB1cmwsIG91dCBpbnQgbGluZU9mZnNldCwgb3V0IGludCBjb2x1bW5PZmZz
ZXQsIG91dCBpbnQgc2NyaXB0V29ybGRUeXBlKTsKICAgICAgICAgW25vdGlmeSwgZG9tYWluPURl
YnVnZ2VyXSB2b2lkIGZhaWxlZFRvUGFyc2VTY3JpcHRTb3VyY2Uob3V0IFN0cmluZyB1cmwsIG91
dCBTdHJpbmcgZGF0YSwgb3V0IGludCBmaXJzdExpbmUsIG91dCBpbnQgZXJyb3JMaW5lLCBvdXQg
U3RyaW5nIGVycm9yTWVzc2FnZSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JDb250cm9sbGVyLmNwcAppbmRleCA4NWE5NDhkLi5hMzI0NWFhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC01ODQs
MTEgKzU4NCw5IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6cmVzdG9yZURlYnVnZ2VyKCkK
IHsKICAgICBBU1NFUlQobV9mcm9udGVuZCk7CiAjaWYgRU5BQkxFKEpBVkFTQ1JJUFRfREVCVUdH
RVIpCi0gICAgaWYgKEluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmlzRGVidWdnZXJBbHdheXNFbmFi
bGVkKCkpCi0gICAgICAgIGVuYWJsZURlYnVnZ2VyRnJvbUZyb250ZW5kKGZhbHNlKTsKLSAgICBl
bHNlIHsKLSAgICAgICAgaWYgKG1fc2V0dGluZ3MtPmdldEJvb2xlYW4oSW5zcGVjdG9yU2V0dGlu
Z3M6OkRlYnVnZ2VyQWx3YXlzRW5hYmxlZCkgfHwgbV9hdHRhY2hEZWJ1Z2dlcldoZW5TaG93bikK
LSAgICAgICAgICAgIGVuYWJsZURlYnVnZ2VyKCk7CisgICAgaWYgKEluc3BlY3RvckRlYnVnZ2Vy
QWdlbnQ6OmlzRGVidWdnZXJBbHdheXNFbmFibGVkKCkgfHwgbV9hdHRhY2hEZWJ1Z2dlcldoZW5T
aG93biB8fCBtX3NldHRpbmdzLT5nZXRCb29sZWFuKEluc3BlY3RvclNldHRpbmdzOjpEZWJ1Z2dl
ckFsd2F5c0VuYWJsZWQpKSB7CisgICAgICAgIGVuYWJsZURlYnVnZ2VyKGZhbHNlKTsKKyAgICAg
ICAgbV9hdHRhY2hEZWJ1Z2dlcldoZW5TaG93biA9IGZhbHNlOwogICAgIH0KICNlbmRpZgogfQpA
QCAtMTA0NSw3ICsxMDQzLDIyIEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZGlzYWJsZVBy
b2ZpbGVyKGJvb2wgYWx3YXlzKQogI2VuZGlmCiAKICNpZiBFTkFCTEUoSkFWQVNDUklQVF9ERUJV
R0dFUikKLXZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZW5hYmxlRGVidWdnZXJGcm9tRnJvbnRl
bmQoYm9vbCBhbHdheXMpCit2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OnNob3dBbmRFbmFibGVE
ZWJ1Z2dlcigpCit7CisgICAgaWYgKCFlbmFibGVkKCkpCisgICAgICAgIHJldHVybjsKKworICAg
IGlmIChkZWJ1Z2dlckVuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFtX2Zy
b250ZW5kKSB7CisgICAgICAgIG1fYXR0YWNoRGVidWdnZXJXaGVuU2hvd24gPSB0cnVlOworICAg
ICAgICBzaG93UGFuZWwoU2NyaXB0c1BhbmVsKTsKKyAgICB9IGVsc2UKKyAgICAgICAgZW5hYmxl
RGVidWdnZXIoZmFsc2UpOworfQorCit2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmVuYWJsZURl
YnVnZ2VyKGJvb2wgYWx3YXlzKQogewogICAgIEFTU0VSVCghZGVidWdnZXJFbmFibGVkKCkpOwog
ICAgIGlmIChhbHdheXMpCkBAIC0xMDYwLDIyICsxMDczLDYgQEAgdm9pZCBJbnNwZWN0b3JDb250
cm9sbGVyOjplbmFibGVEZWJ1Z2dlckZyb21Gcm9udGVuZChib29sIGFsd2F5cykKICAgICBtX2Zy
b250ZW5kLT5kZWJ1Z2dlcldhc0VuYWJsZWQoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JDb250cm9s
bGVyOjplbmFibGVEZWJ1Z2dlcigpCi17Ci0gICAgaWYgKCFlbmFibGVkKCkpCi0gICAgICAgIHJl
dHVybjsKLQotICAgIGlmIChkZWJ1Z2dlckVuYWJsZWQoKSkKLSAgICAgICAgcmV0dXJuOwotCi0g
ICAgaWYgKCFtX2Zyb250ZW5kKQotICAgICAgICBtX2F0dGFjaERlYnVnZ2VyV2hlblNob3duID0g
dHJ1ZTsKLSAgICBlbHNlIHsKLSAgICAgICAgbV9mcm9udGVuZC0+YXR0YWNoRGVidWdnZXJXaGVu
U2hvd24oKTsKLSAgICAgICAgbV9hdHRhY2hEZWJ1Z2dlcldoZW5TaG93biA9IGZhbHNlOwotICAg
IH0KLX0KLQogdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpkaXNhYmxlRGVidWdnZXIoYm9vbCBh
bHdheXMpCiB7CiAgICAgaWYgKCFlbmFibGVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckNvbnRyb2xsZXIuaAppbmRleCAxMmFkMGJmLi5mZDgwYzE5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmgKQEAgLTIxNyw3
ICsyMTcsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaXNhYmxlUHJvZmlsZXIoYm9vbCBhbHdheXMg
PSBmYWxzZSk7CiAgICAgYm9vbCBwcm9maWxlckVuYWJsZWQoKSBjb25zdDsKIAotICAgIHZvaWQg
ZW5hYmxlRGVidWdnZXIoKTsKKyAgICB2b2lkIHNob3dBbmRFbmFibGVEZWJ1Z2dlcigpOworICAg
IHZvaWQgZW5hYmxlRGVidWdnZXIoYm9vbCBhbHdheXMpOwogICAgIHZvaWQgZGlzYWJsZURlYnVn
Z2VyKGJvb2wgYWx3YXlzID0gZmFsc2UpOwogICAgIGJvb2wgZGVidWdnZXJFbmFibGVkKCkgY29u
c3QgeyByZXR1cm4gbV9kZWJ1Z2dlckFnZW50OyB9CiAgICAgdm9pZCByZXN1bWUoKTsKQEAgLTI3
NSw3ICsyNzYsNiBAQCBwcml2YXRlOgogCiAjaWYgRU5BQkxFKEpBVkFTQ1JJUFRfREVCVUdHRVIp
CiAgICAgdm9pZCB0b2dnbGVSZWNvcmRCdXR0b24oYm9vbCk7Ci0gICAgdm9pZCBlbmFibGVEZWJ1
Z2dlckZyb21Gcm9udGVuZChib29sIGFsd2F5cyk7CiAgICAgdm9pZCByZXN0b3JlU3RpY2t5QnJl
YWtwb2ludHMoKTsKICAgICB2b2lkIHJlc3RvcmVTdGlja3lCcmVha3BvaW50KFBhc3NSZWZQdHI8
SW5zcGVjdG9yT2JqZWN0PiBicmVha3BvaW50KTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EZWJ1Z2dlck1vZGVsLmpzIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EZWJ1Z2dlck1vZGVsLmpzCmluZGV4IGIwNTZlMzAu
LjhmNWJjZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
RGVidWdnZXJNb2RlbC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L0RlYnVnZ2VyTW9kZWwuanMKQEAgLTIyNCwxMSArMjI0LDYgQEAgV2ViSW5zcGVjdG9yLkRlYnVn
Z2VyRGlzcGF0Y2hlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuX2RlYnVnZ2VyTW9kZWwu
X3Jlc3VtZWRTY3JpcHQoKTsKICAgICB9LAogCi0gICAgYXR0YWNoRGVidWdnZXJXaGVuU2hvd246
IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIFdlYkluc3BlY3Rvci5wYW5lbHMuc2NyaXB0cy5h
dHRhY2hEZWJ1Z2dlcldoZW5TaG93bigpOwotICAgIH0sCi0KICAgICBkZWJ1Z2dlcldhc0VuYWJs
ZWQ6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIFdlYkluc3BlY3Rvci5wYW5lbHMuc2NyaXB0
cy5kZWJ1Z2dlcldhc0VuYWJsZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKaW5kZXggYTA0OTcwZS4uNWZiZjkzYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMK
KysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMK
QEAgLTIxOCwxMSArMjE4LDYgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUg
PSB7CiAKICAgICAgICAgaWYgKHRoaXMudmlzaWJsZVZpZXcpCiAgICAgICAgICAgICB0aGlzLnZp
c2libGVWaWV3LnNob3codGhpcy52aWV3c0NvbnRhaW5lckVsZW1lbnQpOwotCi0gICAgICAgIGlm
ICh0aGlzLl9hdHRhY2hEZWJ1Z2dlcldoZW5TaG93bikgewotICAgICAgICAgICAgSW5zcGVjdG9y
QmFja2VuZC5lbmFibGVEZWJ1Z2dlckZyb21Gcm9udGVuZChmYWxzZSk7Ci0gICAgICAgICAgICBk
ZWxldGUgdGhpcy5fYXR0YWNoRGVidWdnZXJXaGVuU2hvd247Ci0gICAgICAgIH0KICAgICB9LAog
CiAgICAgaGlkZTogZnVuY3Rpb24oKQpAQCAtMzk4LDE1ICszOTMsNiBAQCBXZWJJbnNwZWN0b3Iu
U2NyaXB0c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5fY2xlYXJJbnRlcmZhY2Uo
KTsKICAgICB9LAogCi0gICAgYXR0YWNoRGVidWdnZXJXaGVuU2hvd246IGZ1bmN0aW9uKCkKLSAg
ICB7Ci0gICAgICAgIGlmICh0aGlzLmVsZW1lbnQucGFyZW50RWxlbWVudCkgewotICAgICAgICAg
ICAgSW5zcGVjdG9yQmFja2VuZC5lbmFibGVEZWJ1Z2dlckZyb21Gcm9udGVuZChmYWxzZSk7Ci0g
ICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICB0aGlzLl9hdHRhY2hEZWJ1Z2dlcldoZW5TaG93
biA9IHRydWU7Ci0gICAgICAgIH0KLSAgICB9LAotCiAgICAgZGVidWdnZXJXYXNFbmFibGVkOiBm
dW5jdGlvbigpCiAgICAgewogICAgICAgICBpZiAodGhpcy5fZGVidWdnZXJFbmFibGVkKQpAQCAt
ODcxLDcgKzg1Nyw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0gewog
ICAgICAgICBpZiAodGhpcy5fZGVidWdnZXJFbmFibGVkKQogICAgICAgICAgICAgSW5zcGVjdG9y
QmFja2VuZC5kaXNhYmxlRGVidWdnZXIodHJ1ZSk7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAg
IEluc3BlY3RvckJhY2tlbmQuZW5hYmxlRGVidWdnZXJGcm9tRnJvbnRlbmQoISFvcHRpb25hbEFs
d2F5cyk7CisgICAgICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLmVuYWJsZURlYnVnZ2VyKCEhb3B0
aW9uYWxBbHdheXMpOwogICAgIH0sCiAKICAgICBfdG9nZ2xlUGF1c2VPbkV4Y2VwdGlvbnM6IGZ1
bmN0aW9uKCkKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvV2ViS2l0L21hYy9D
aGFuZ2VMb2cKaW5kZXggNjkzODRlMC4uNTY4YmU3ZCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9D
aGFuZ2VMb2cKKysrIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAx
MS0wMS0xNCAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBz
aW1wbGlmeSBkZWJ1Z2dlciBlbmFibGluZyByb3V0aW5lLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTI0NzIKKworICAgICAgICAqIFdlYkluc3BlY3Rv
ci9XZWJJbnNwZWN0b3IubW06CisgICAgICAgICgtW1dlYkluc3BlY3RvciBzdGFydERlYnVnZ2lu
Z0phdmFTY3JpcHQ6XSk6CisKIDIwMTEtMDEtMTIgIEVucmljYSBDYXN1Y2NpICA8ZW5yaWNhQGFw
cGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBh
L1dlYktpdC9tYWMvV2ViSW5zcGVjdG9yL1dlYkluc3BlY3Rvci5tbSBiL1dlYktpdC9tYWMvV2Vi
SW5zcGVjdG9yL1dlYkluc3BlY3Rvci5tbQppbmRleCBmMTA5ZTE1Li44YWIwNDlmIDEwMDY0NAot
LS0gYS9XZWJLaXQvbWFjL1dlYkluc3BlY3Rvci9XZWJJbnNwZWN0b3IubW0KKysrIGIvV2ViS2l0
L21hYy9XZWJJbnNwZWN0b3IvV2ViSW5zcGVjdG9yLm1tCkBAIC05Niw4ICs5Niw3IEBAIHVzaW5n
IG5hbWVzcGFjZSBXZWJDb3JlOwogICAgIFBhZ2UqIHBhZ2UgPSBjb3JlKF93ZWJWaWV3KTsKICAg
ICBpZiAoIXBhZ2UpCiAgICAgICAgIHJldHVybjsKLSAgICBwYWdlLT5pbnNwZWN0b3JDb250cm9s
bGVyKCktPnNob3dQYW5lbChJbnNwZWN0b3JDb250cm9sbGVyOjpTY3JpcHRzUGFuZWwpOwotICAg
IHBhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+ZW5hYmxlRGVidWdnZXIoKTsKKyAgICBwYWdl
LT5pbnNwZWN0b3JDb250cm9sbGVyKCktPnNob3dBbmRFbmFibGVEZWJ1Z2dlcigpOwogfQogCiAt
ICh2b2lkKXN0b3BEZWJ1Z2dpbmdKYXZhU2NyaXB0OihpZClzZW5kZXIKZGlmZiAtLWdpdCBhL1dl
YktpdC93aW4vQ2hhbmdlTG9nIGIvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggYzgwZjA5MS4u
NDI4M2IxOCAxMDA2NDQKLS0tIGEvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3dp
bi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMS0wMS0xNCAgUGF2ZWwgRmVsZG1hbiAg
PHBmZWxkbWFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBzaW1wbGlmeSBkZWJ1Z2dlciBlbmFibGlu
ZyByb3V0aW5lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTI0NzIKKworICAgICAgICAqIFdlYkluc3BlY3Rvci5jcHA6CisgICAgICAgIChXZWJJbnNw
ZWN0b3I6OnRvZ2dsZURlYnVnZ2luZ0phdmFTY3JpcHQpOgorCiAyMDExLTAxLTEwICBHZW9mZnJl
eSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CiAKICAgICAgICAgVHJ5IHRvIGZpeCBXaW5kb3dz
IGJ1aWxkLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3dpbi9XZWJJbnNwZWN0b3IuY3BwIGIvV2ViS2l0
L3dpbi9XZWJJbnNwZWN0b3IuY3BwCmluZGV4IDAzMzc3MTEuLmMzODIzYjIgMTAwNjQ0Ci0tLSBh
L1dlYktpdC93aW4vV2ViSW5zcGVjdG9yLmNwcAorKysgYi9XZWJLaXQvd2luL1dlYkluc3BlY3Rv
ci5jcHAKQEAgLTE3MCwxMCArMTcwLDggQEAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJJ
bnNwZWN0b3I6OnRvZ2dsZURlYnVnZ2luZ0phdmFTY3JpcHQoKQogCiAgICAgaWYgKGluc3BlY3Rv
ci0+ZGVidWdnZXJFbmFibGVkKCkpCiAgICAgICAgIGluc3BlY3Rvci0+ZGlzYWJsZURlYnVnZ2Vy
KCk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIGluc3BlY3Rvci0+c2hvd1BhbmVsKEluc3BlY3RvckNv
bnRyb2xsZXI6OlNjcmlwdHNQYW5lbCk7Ci0gICAgICAgIGluc3BlY3Rvci0+ZW5hYmxlRGVidWdn
ZXIoKTsKLSAgICB9CisgICAgZWxzZQorICAgICAgICBpbnNwZWN0b3ItPnNob3dBbmRFbmFibGVE
ZWJ1Z2dlcigpOwogCiAgICAgcmV0dXJuIFNfT0s7CiB9CmRpZmYgLS1naXQgYS9XZWJLaXQyL0No
YW5nZUxvZyBiL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IGY2NWRhYzkuLjU1MTgxYWIgMTAwNjQ0
Ci0tLSBhL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMTEtMDEtMTQgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2Vi
IEluc3BlY3Rvcjogc2ltcGxpZnkgZGVidWdnZXIgZW5hYmxpbmcgcm91dGluZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyNDcyCisKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViSW5zcGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViSW5zcGVjdG9yOjpzdGFydEphdmFTY3JpcHREZWJ1Z2dpbmcpOgorCiAyMDExLTAxLTE0ICBM
YXN6bG8gR29tYm9zICA8bGFzemxvLjEuZ29tYm9zQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4KZGlmZiAtLWdpdCBhL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkluc3BlY3Rvci5jcHAgYi9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJJbnNwZWN0b3IuY3BwCmluZGV4IGFkMjk0ZjYuLjU1OWI4YjYgMTAwNjQ0Ci0t
LSBhL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkluc3BlY3Rvci5jcHAKKysrIGIvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViSW5zcGVjdG9yLmNwcApAQCAtOTksOCArOTksNyBA
QCB2b2lkIFdlYkluc3BlY3Rvcjo6c2hvd0NvbnNvbGUoKQogdm9pZCBXZWJJbnNwZWN0b3I6OnN0
YXJ0SmF2YVNjcmlwdERlYnVnZ2luZygpCiB7CiAjaWYgRU5BQkxFKEpBVkFTQ1JJUFRfREVCVUdH
RVIpCi0gICAgbV9wYWdlLT5jb3JlUGFnZSgpLT5pbnNwZWN0b3JDb250cm9sbGVyKCktPnNob3dQ
YW5lbChJbnNwZWN0b3JDb250cm9sbGVyOjpTY3JpcHRzUGFuZWwpOwotICAgIG1fcGFnZS0+Y29y
ZVBhZ2UoKS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5lbmFibGVEZWJ1Z2dlcigpOworICAgIG1f
cGFnZS0+Y29yZVBhZ2UoKS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5zaG93QW5kRW5hYmxlRGVi
dWdnZXIoKTsKICNlbmRpZgogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>