<?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>60762</bug_id>
          
          <creation_ts>2011-05-13 06:38:07 -0700</creation_ts>
          <short_desc>Web Inspector: [protocol] extend setBreakpointByUrl request to accept incomplete URL (predicates)</short_desc>
          <delta_ts>2011-07-21 05:20:13 -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="Peter Rybin">peter.rybin</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>peter.rybin</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>403511</commentid>
    <comment_count>0</comment_count>
    <who name="Peter Rybin">peter.rybin</who>
    <bug_when>2011-05-13 06:38:07 -0700</bug_when>
    <thetext>Use case: &quot;provisional breakpoints&quot;
In IDE user opens source file foo.js from disk. He sets a breakpoint in the file. Then he attaches to Chrome.

At this moment Chrome must learn about the user breakpoints, but exact URL or script id is needed. If script hasn&apos;t been loaded yet the breakpoint cannot be set without knowing exact URL. This makes it extremely hard to build an IDE with provisional breakpoints, event harder is to build user-friendly IDE.

Scenario that is to be implemented:
IDE from a short name of the file foo.js (and possibly some additional mark-up) specifies a URL predicated, either in form of a URL substring, RegExp or path component list (the latter is nice because the reverse map URL -&gt; matching breakpoints can be built).
When Chrome compiles a new script, it checks predicates of all provisional breakpoints and set matching ones in the new script.

I propose this feature first implemented and added to protocol in experimental mode because the optimal type of predicate seems unclear now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438696</commentid>
    <comment_count>1</comment_count>
    <who name="Peter Rybin">peter.rybin</who>
    <bug_when>2011-07-18 13:58:03 -0700</bug_when>
    <thetext>This probably should reproduce V8&apos;s debug protocol feature: RegExp on the script name.

You can set a breakpoint specifying a RegExp pattern for the script name (in place of script URL or source ID). Unlimited number of scripts could be matched.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440352</commentid>
    <comment_count>2</comment_count>
      <attachid>101576</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-07-21 05:07:58 -0700</bug_when>
    <thetext>Created attachment 101576
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440353</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-21 05:10:20 -0700</bug_when>
    <thetext>Attachment 101576 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/insp...&quot; exit_code: 1

Source/WebCore/inspector/InspectorDebuggerAgent.cpp:184:  The parameter type should use PassRefPtr instead of RefPtr.  [readability/pass_ptr] [5]
Source/WebCore/inspector/InspectorDebuggerAgent.h:85:  The parameter type should use PassRefPtr instead of RefPtr.  [readability/pass_ptr] [5]
Total errors found: 2 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440354</commentid>
    <comment_count>4</comment_count>
      <attachid>101576</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-07-21 05:16:09 -0700</bug_when>
    <thetext>Comment on attachment 101576
Patch

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

&gt; LayoutTests/inspector/debugger/debugger-set-breakpoint-regex.html:45
&gt; +Tests Debugger.setBreakpointByUrl with isRegex set to true.

Link to the bug is missing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440355</commentid>
    <comment_count>5</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-07-21 05:20:13 -0700</bug_when>
    <thetext>Committed r91461: &lt;http://trac.webkit.org/changeset/91461&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101576</attachid>
            <date>2011-07-21 05:07:58 -0700</date>
            <delta_ts>2011-07-21 05:16:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-60762-20110721160756.patch</filename>
            <type>text/plain</type>
            <size>10982</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTE0NTAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5YzhjZWFhZWFkMDcxOWJhMDU0NDVl
MGY1YTNlYmIzZTA3NGY1MGRkLi5lYzc1NjE4ZGUyMDhjMWIxZTM2NGFhZjkwM2UwZjVlMzdjYmUw
ZWJhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDctMjEgIFBhdmVsIEZlbGRtYW4gIDxw
ZmVsZG1hbkBnb29nbGUuY29tPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFtwcm90b2NvbF0g
ZXh0ZW5kIHNldEJyZWFrcG9pbnRCeVVybCByZXF1ZXN0IHRvIGFjY2VwdCBpbmNvbXBsZXRlIFVS
TCAocHJlZGljYXRlcykKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTYwNzYyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIvZGVidWdnZXItc2V0LWJyZWFrcG9pbnQtcmVnZXgt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIvZGVidWdn
ZXItc2V0LWJyZWFrcG9pbnQtcmVnZXguaHRtbDogQWRkZWQuCisKIDIwMTEtMDctMjEgIFJ5b3N1
a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBbV2ViS2l0
IEFQSV0gSW1wbGVtZW50IFdlYkNvcmU6OmRlZmF1bHREZXRhaWxzU3VtbWFyeVRleHQoKQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2RlYnVnZ2VyLXNldC1icmVh
a3BvaW50LXJlZ2V4LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dl
ci9kZWJ1Z2dlci1zZXQtYnJlYWtwb2ludC1yZWdleC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MzM3OGFhMDljODk5MzEwYjI4OTA2M2U3YWVkM2UzOTJiZGRkYjIwMAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9kZWJ1Z2dlci1zZXQtYnJlYWtwb2lu
dC1yZWdleC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAorVGVzdHMgRGVidWdnZXIuc2V0
QnJlYWtwb2ludEJ5VXJsIHdpdGggaXNSZWdleCBzZXQgdG8gdHJ1ZS4KKworRGVidWdnZXIgd2Fz
IGVuYWJsZWQuCitTZXQgdGltZXIgZm9yIHRlc3QgZnVuY3Rpb24uCitTY3JpcHQgZXhlY3V0aW9u
IHBhdXNlZC4KK0NhbGwgc3RhY2s6CisgICAgMCkgdGVzdEZ1bmN0aW9uIChkZWJ1Z2dlci1zZXQt
YnJlYWtwb2ludC1yZWdleC5odG1sOjkpCitTY3JpcHQgZXhlY3V0aW9uIHJlc3VtZWQuCitEZWJ1
Z2dlciB3YXMgZGlzYWJsZWQuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9k
ZWJ1Z2dlci9kZWJ1Z2dlci1zZXQtYnJlYWtwb2ludC1yZWdleC5odG1sIGIvTGF5b3V0VGVzdHMv
aW5zcGVjdG9yL2RlYnVnZ2VyL2RlYnVnZ2VyLXNldC1icmVha3BvaW50LXJlZ2V4Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNTU2NWZjNTdlOTQxNTMzZWUyNTJiNWI2ZjFiOGVjMDEzNDkyNGQwNwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9kZWJ1Z2dlci1zZXQt
YnJlYWtwb2ludC1yZWdleC5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzxodG1sPgorPGhlYWQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vaHR0cC90ZXN0cy9pbnNwZWN0b3IvaW5zcGVjdG9yLXRlc3QuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMvaW5zcGVjdG9yL2RlYnVn
Z2VyLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKworZnVuY3Rpb24gdGVzdEZ1bmN0aW9u
KCkKK3sKKyAgICBmb28oKTsKK30KKworZnVuY3Rpb24gZm9vKCkKK3sKK30KKworZnVuY3Rpb24g
dGVzdCgpCit7CisgICAgSW5zcGVjdG9yVGVzdC5zdGFydERlYnVnZ2VyVGVzdChzdGVwMSk7CisK
KyAgICBmdW5jdGlvbiBzdGVwMSgpCisgICAgeworICAgICAgICB2YXIgY29sdW1uTnVtYmVyID0g
dW5kZWZpbmVkOworICAgICAgICB2YXIgY29uZGl0aW9uID0gdW5kZWZpbmVkOworICAgICAgICB2
YXIgaXNSZWdleCA9IHRydWU7CisgICAgICAgIERlYnVnZ2VyQWdlbnQuc2V0QnJlYWtwb2ludEJ5
VXJsKCJkZWJ1Z2dlci1zZXQtYnJlYWtwb2ludC4qIiwgOCwgY29sdW1uTnVtYmVyLCBjb25kaXRp
b24sIGlzUmVnZXgsIHN0ZXAyKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzdGVwMigpCisgICAg
eworICAgICAgICBJbnNwZWN0b3JUZXN0LnJ1blRlc3RGdW5jdGlvbkFuZFdhaXRVbnRpbFBhdXNl
ZChzdGVwMyk7CisgICAgfQorCisgICAgZnVuY3Rpb24gc3RlcDMoY2FsbEZyYW1lcykKKyAgICB7
CisgICAgICAgIEluc3BlY3RvclRlc3QuY2FwdHVyZVN0YWNrVHJhY2UoY2FsbEZyYW1lcyk7Cisg
ICAgICAgIEluc3BlY3RvclRlc3QuY29tcGxldGVEZWJ1Z2dlclRlc3QoKTsKKyAgICB9Cit9CisK
Kzwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Cis8cD4KK1Rl
c3RzIERlYnVnZ2VyLnNldEJyZWFrcG9pbnRCeVVybCB3aXRoIGlzUmVnZXggc2V0IHRvIHRydWUu
Cis8L3A+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzFhZTBlZTU1MWM0ODg2YTVh
YzQ2OGRiMzg4NmZkNTZiMDBkMjEyZi4uODE2ODE1MDlhMWM2MjEyNDM4YjUyNTNhYzg4ZDBiM2M2
ODNkZDg2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDExLTA3LTIxICBQYXZlbCBG
ZWxkbWFuICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBb
cHJvdG9jb2xdIGV4dGVuZCBzZXRCcmVha3BvaW50QnlVcmwgcmVxdWVzdCB0byBhY2NlcHQgaW5j
b21wbGV0ZSBVUkwgKHByZWRpY2F0ZXMpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD02MDc2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFRlc3Q6IGluc3BlY3Rvci9kZWJ1Z2dlci9kZWJ1Z2dlci1zZXQtYnJl
YWtwb2ludC1yZWdleC5odG1sCisKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yLmpzb246
CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6YnVpbGRPYmplY3RGb3JCcmVha3BvaW50Q29va2llKToKKyAgICAgICAgKFdl
YkNvcmU6Om1hdGNoZXMpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRGVidWdnZXJBZ2Vu
dDo6c2V0QnJlYWtwb2ludEJ5VXJsKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRlYnVn
Z2VyQWdlbnQ6OmRpZFBhcnNlU291cmNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9y
RGVidWdnZXJBZ2VudC5oOgorCiAyMDExLTA3LTIwICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJr
aXQub3JnPgogCiAgICAgICAgIEZpeCBhIFZhbGdyaW5kIGZhaWx1cmUgY2F1c2VkIGJ5IHI5MTQz
NS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuanNvbiBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuanNvbgppbmRleCBlMWUxNWQ4Nzlj
ZmNkNjE3OTNhZGQ2NDJiMjMyMDEwN2FlYThhZGQwLi43ZjVhNDAzMzY4ZWVkNzM1NGE1YzQ0N2Nj
OGU4MjY2NTIxZDVjZTVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yLmpzb24KKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvci5qc29u
CkBAIC0xNDc1LDcgKzE0NzUsOCBAQAogICAgICAgICAgICAgICAgICAgICB7ICJuYW1lIjogInVy
bCIsICJ0eXBlIjogInN0cmluZyIsICJkZXNjcmlwdGlvbiI6ICJVUkwgb2YgdGhlIHJlc291cmNl
IHRvIHNldCBicmVha3BvaW50IG9uLiIgfSwKICAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6
ICJsaW5lTnVtYmVyIiwgInR5cGUiOiAiaW50ZWdlciIsICJkZXNjcmlwdGlvbiI6ICJMaW5lIG51
bWJlciB0byBzZXQgYnJlYWtwb2ludCBhdC4iIH0sCiAgICAgICAgICAgICAgICAgICAgIHsgIm5h
bWUiOiAiY29sdW1uTnVtYmVyIiwgInR5cGUiOiAiaW50ZWdlciIsICJvcHRpb25hbCI6IHRydWUs
ICJkZXNjcmlwdGlvbiI6ICJPZmZzZXQgaW4gdGhlIGxpbmUgdG8gc2V0IGJyZWFrcG9pbnQgYXQu
IiB9LAotICAgICAgICAgICAgICAgICAgICB7ICJuYW1lIjogImNvbmRpdGlvbiIsICJ0eXBlIjog
InN0cmluZyIsICJvcHRpb25hbCI6IHRydWUsICJkZXNjcmlwdGlvbiI6ICJFeHByZXNzaW9uIHRv
IHVzZSBhcyBhIGJyZWFrcG9pbnQgY29uZGl0aW9uLiBXaGVuIHNwZWNpZmllZCwgZGVidWdnZXIg
d2lsbCBvbmx5IHN0b3Agb24gdGhlIGJyZWFrcG9pbnQgaWYgdGhpcyBleHByZXNzaW9uIGV2YWx1
YXRlcyB0byB0cnVlLiIgfQorICAgICAgICAgICAgICAgICAgICB7ICJuYW1lIjogImNvbmRpdGlv
biIsICJ0eXBlIjogInN0cmluZyIsICJvcHRpb25hbCI6IHRydWUsICJkZXNjcmlwdGlvbiI6ICJF
eHByZXNzaW9uIHRvIHVzZSBhcyBhIGJyZWFrcG9pbnQgY29uZGl0aW9uLiBXaGVuIHNwZWNpZmll
ZCwgZGVidWdnZXIgd2lsbCBvbmx5IHN0b3Agb24gdGhlIGJyZWFrcG9pbnQgaWYgdGhpcyBleHBy
ZXNzaW9uIGV2YWx1YXRlcyB0byB0cnVlLiIgfSwKKyAgICAgICAgICAgICAgICAgICAgeyAibmFt
ZSI6ICJpc1JlZ2V4IiwgInR5cGUiOiAiYm9vbGVhbiIsICJvcHRpb25hbCI6IHRydWUsICJkZXNj
cmlwdGlvbiI6ICJJZiB0cnVlLCBnaXZlbiA8Y29kZT51cmw8L2NvZGU+IGlzIGNvbnNpZGVyZWQg
dG8gYmUgYSByZWd1bGFyIGV4cHJlc3Npb24uIiB9CiAgICAgICAgICAgICAgICAgXSwKICAgICAg
ICAgICAgICAgICAicmV0dXJucyI6IFsKICAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJi
cmVha3BvaW50SWQiLCAidHlwZSI6ICJzdHJpbmciLCAiZGVzY3JpcHRpb24iOiAiSWQgb2YgdGhl
IGNyZWF0ZWQgYnJlYWtwb2ludCBmb3IgZnVydGhlciBtYW5pcHVsYXRpb25zLiIgfSwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcApp
bmRleCA2YTgyOWQyMjEzMjMyYTFlMmFmNGViYzU0NzgzY2I0ZjUxZTA2ODczLi5mMjhlYTU0NTE1
YzE5YTQ3NTdhYjRiMWQ5MTRiNmM2ZDU1YmQ0NmQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuY3BwCkBAIC0zNyw2ICszNyw3IEBA
CiAjaW5jbHVkZSAiSW5zcGVjdG9yU3RhdGUuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JWYWx1ZXMu
aCIKICNpbmNsdWRlICJJbnN0cnVtZW50aW5nQWdlbnRzLmgiCisjaW5jbHVkZSAiUmVndWxhckV4
cHJlc3Npb24uaCIKICNpbmNsdWRlICJTY3JpcHREZWJ1Z1NlcnZlci5oIgogI2luY2x1ZGUgIlNj
cmlwdE9iamVjdC5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtMTYwLDMx
ICsxNjEsNDIgQEAgdm9pZCBJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjppbnNwZWN0ZWRVUkxDaGFu
Z2VkKGNvbnN0IFN0cmluZyYpCiAgICAgbV9icmVha3BvaW50SWRUb0RlYnVnU2VydmVyQnJlYWtw
b2ludElkcy5jbGVhcigpOwogfQogCi1zdGF0aWMgUGFzc1JlZlB0cjxJbnNwZWN0b3JPYmplY3Q+
IGJ1aWxkT2JqZWN0Rm9yQnJlYWtwb2ludENvb2tpZShjb25zdCBTdHJpbmcmIHVybCwgaW50IGxp
bmVOdW1iZXIsIGludCBjb2x1bW5OdW1iZXIsIGNvbnN0IFN0cmluZyYgY29uZGl0aW9uKQorc3Rh
dGljIFBhc3NSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiBidWlsZE9iamVjdEZvckJyZWFrcG9pbnRD
b29raWUoY29uc3QgU3RyaW5nJiB1cmwsIGludCBsaW5lTnVtYmVyLCBpbnQgY29sdW1uTnVtYmVy
LCBjb25zdCBTdHJpbmcmIGNvbmRpdGlvbiwgYm9vbCBpc1JlZ2V4KQogewogICAgIFJlZlB0cjxJ
bnNwZWN0b3JPYmplY3Q+IGJyZWFrcG9pbnRPYmplY3QgPSBJbnNwZWN0b3JPYmplY3Q6OmNyZWF0
ZSgpOwogICAgIGJyZWFrcG9pbnRPYmplY3QtPnNldFN0cmluZygidXJsIiwgdXJsKTsKICAgICBi
cmVha3BvaW50T2JqZWN0LT5zZXROdW1iZXIoImxpbmVOdW1iZXIiLCBsaW5lTnVtYmVyKTsKICAg
ICBicmVha3BvaW50T2JqZWN0LT5zZXROdW1iZXIoImNvbHVtbk51bWJlciIsIGNvbHVtbk51bWJl
cik7CiAgICAgYnJlYWtwb2ludE9iamVjdC0+c2V0U3RyaW5nKCJjb25kaXRpb24iLCBjb25kaXRp
b24pOworICAgIGJyZWFrcG9pbnRPYmplY3QtPnNldEJvb2xlYW4oImlzUmVnZXgiLCBpc1JlZ2V4
KTsKICAgICByZXR1cm4gYnJlYWtwb2ludE9iamVjdDsKIH0KIAotdm9pZCBJbnNwZWN0b3JEZWJ1
Z2dlckFnZW50OjpzZXRCcmVha3BvaW50QnlVcmwoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcm
IHVybCwgaW50IGxpbmVOdW1iZXIsIGNvbnN0IGludCogY29uc3Qgb3B0aW9uYWxDb2x1bW5OdW1i
ZXIsIGNvbnN0IFN0cmluZyogY29uc3Qgb3B0aW9uYWxDb25kaXRpb24sIFN0cmluZyogb3V0QnJl
YWtwb2ludElkLCBSZWZQdHI8SW5zcGVjdG9yQXJyYXk+KiBsb2NhdGlvbnMpCitzdGF0aWMgYm9v
bCBtYXRjaGVzKGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIHBhdHRlcm4sIGJvb2wg
aXNSZWdleCkKK3sKKyAgICBpZiAoaXNSZWdleCkgeworICAgICAgICBSZWd1bGFyRXhwcmVzc2lv
biByZWdleChwYXR0ZXJuLCBUZXh0Q2FzZVNlbnNpdGl2ZSk7CisgICAgICAgIHJldHVybiByZWdl
eC5tYXRjaCh1cmwpICE9IC0xOworICAgIH0KKyAgICByZXR1cm4gdXJsID09IHBhdHRlcm47Cit9
CisKK3ZvaWQgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6c2V0QnJlYWtwb2ludEJ5VXJsKEVycm9y
U3RyaW5nKiwgY29uc3QgU3RyaW5nJiB1cmwsIGludCBsaW5lTnVtYmVyLCBjb25zdCBpbnQqIGNv
bnN0IG9wdGlvbmFsQ29sdW1uTnVtYmVyLCBjb25zdCBTdHJpbmcqIGNvbnN0IG9wdGlvbmFsQ29u
ZGl0aW9uLCBjb25zdCBib29sKiBjb25zdCBvcHRpb25hbElzUmVnZXgsIFN0cmluZyogb3V0QnJl
YWtwb2ludElkLCBSZWZQdHI8SW5zcGVjdG9yQXJyYXk+KiBsb2NhdGlvbnMpCiB7CiAgICAgaW50
IGNvbHVtbk51bWJlciA9IG9wdGlvbmFsQ29sdW1uTnVtYmVyID8gKm9wdGlvbmFsQ29sdW1uTnVt
YmVyIDogMDsKICAgICBTdHJpbmcgY29uZGl0aW9uID0gb3B0aW9uYWxDb25kaXRpb24gPyAqb3B0
aW9uYWxDb25kaXRpb24gOiAiIjsKKyAgICBib29sIGlzUmVnZXggPSBvcHRpb25hbElzUmVnZXgg
PyAqb3B0aW9uYWxJc1JlZ2V4IDogZmFsc2U7CiAKLSAgICBTdHJpbmcgYnJlYWtwb2ludElkID0g
dXJsICsgJzonICsgU3RyaW5nOjpudW1iZXIobGluZU51bWJlcikgKyAnOicgKyBTdHJpbmc6Om51
bWJlcihjb2x1bW5OdW1iZXIpOworICAgIFN0cmluZyBicmVha3BvaW50SWQgPSAoaXNSZWdleCA/
ICIvIiArIHVybCArICIvIiA6IHVybCkgKyAnOicgKyBTdHJpbmc6Om51bWJlcihsaW5lTnVtYmVy
KSArICc6JyArIFN0cmluZzo6bnVtYmVyKGNvbHVtbk51bWJlcik7CiAgICAgUmVmUHRyPEluc3Bl
Y3Rvck9iamVjdD4gYnJlYWtwb2ludHNDb29raWUgPSBtX2luc3BlY3RvclN0YXRlLT5nZXRPYmpl
Y3QoRGVidWdnZXJBZ2VudFN0YXRlOjpqYXZhU2NyaXB0QnJlYWtwb2ludHMpOwogICAgIGlmIChi
cmVha3BvaW50c0Nvb2tpZS0+ZmluZChicmVha3BvaW50SWQpICE9IGJyZWFrcG9pbnRzQ29va2ll
LT5lbmQoKSkKICAgICAgICAgcmV0dXJuOwotICAgIGJyZWFrcG9pbnRzQ29va2llLT5zZXRPYmpl
Y3QoYnJlYWtwb2ludElkLCBidWlsZE9iamVjdEZvckJyZWFrcG9pbnRDb29raWUodXJsLCBsaW5l
TnVtYmVyLCBjb2x1bW5OdW1iZXIsIGNvbmRpdGlvbikpOworICAgIGJyZWFrcG9pbnRzQ29va2ll
LT5zZXRPYmplY3QoYnJlYWtwb2ludElkLCBidWlsZE9iamVjdEZvckJyZWFrcG9pbnRDb29raWUo
dXJsLCBsaW5lTnVtYmVyLCBjb2x1bW5OdW1iZXIsIGNvbmRpdGlvbiwgaXNSZWdleCkpOwogICAg
IG1faW5zcGVjdG9yU3RhdGUtPnNldE9iamVjdChEZWJ1Z2dlckFnZW50U3RhdGU6OmphdmFTY3Jp
cHRCcmVha3BvaW50cywgYnJlYWtwb2ludHNDb29raWUpOwogCiAgICAgU2NyaXB0QnJlYWtwb2lu
dCBicmVha3BvaW50KGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlciwgY29uZGl0aW9uKTsKICAgICBm
b3IgKFNjcmlwdHNNYXA6Oml0ZXJhdG9yIGl0ID0gbV9zY3JpcHRzLmJlZ2luKCk7IGl0ICE9IG1f
c2NyaXB0cy5lbmQoKTsgKytpdCkgewotICAgICAgICBpZiAoaXQtPnNlY29uZC51cmwgIT0gdXJs
KQorICAgICAgICBpZiAoIW1hdGNoZXMoaXQtPnNlY29uZC51cmwsIHVybCwgaXNSZWdleCkpCiAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gbG9j
YXRpb24gPSByZXNvbHZlQnJlYWtwb2ludChicmVha3BvaW50SWQsIGl0LT5maXJzdCwgYnJlYWtw
b2ludCk7CiAgICAgICAgIGlmIChsb2NhdGlvbikKQEAgLTQxNCw5ICs0MjYsMTEgQEAgdm9pZCBJ
bnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpkaWRQYXJzZVNvdXJjZShjb25zdCBTdHJpbmcmIHNvdXJj
ZUlkLCBjb25zdCBTY3JpcHQKICAgICBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiBicmVha3BvaW50
c0Nvb2tpZSA9IG1faW5zcGVjdG9yU3RhdGUtPmdldE9iamVjdChEZWJ1Z2dlckFnZW50U3RhdGU6
OmphdmFTY3JpcHRCcmVha3BvaW50cyk7CiAgICAgZm9yIChJbnNwZWN0b3JPYmplY3Q6Oml0ZXJh
dG9yIGl0ID0gYnJlYWtwb2ludHNDb29raWUtPmJlZ2luKCk7IGl0ICE9IGJyZWFrcG9pbnRzQ29v
a2llLT5lbmQoKTsgKytpdCkgewogICAgICAgICBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiBicmVh
a3BvaW50T2JqZWN0ID0gaXQtPnNlY29uZC0+YXNPYmplY3QoKTsKLSAgICAgICAgU3RyaW5nIGJy
ZWFrcG9pbnRVUkw7Ci0gICAgICAgIGJyZWFrcG9pbnRPYmplY3QtPmdldFN0cmluZygidXJsIiwg
JmJyZWFrcG9pbnRVUkwpOwotICAgICAgICBpZiAoYnJlYWtwb2ludFVSTCAhPSBzY3JpcHQudXJs
KQorICAgICAgICBib29sIGlzUmVnZXg7CisgICAgICAgIGJyZWFrcG9pbnRPYmplY3QtPmdldEJv
b2xlYW4oImlzUmVnZXgiLCAmaXNSZWdleCk7CisgICAgICAgIFN0cmluZyB1cmw7CisgICAgICAg
IGJyZWFrcG9pbnRPYmplY3QtPmdldFN0cmluZygidXJsIiwgJnVybCk7CisgICAgICAgIGlmICgh
bWF0Y2hlcyhzY3JpcHQudXJsLCB1cmwsIGlzUmVnZXgpKQogICAgICAgICAgICAgY29udGludWU7
CiAgICAgICAgIFNjcmlwdEJyZWFrcG9pbnQgYnJlYWtwb2ludDsKICAgICAgICAgYnJlYWtwb2lu
dE9iamVjdC0+Z2V0TnVtYmVyKCJsaW5lTnVtYmVyIiwgJmJyZWFrcG9pbnQubGluZU51bWJlcik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJB
Z2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQu
aAppbmRleCAxNmFjZjFjZDBmNjVlMWUxZGZjOWVlYjkxZjZhNWE1Nzc1ZGY0ZjMxLi4xODYwNmI2
NzY3YzYzNmE3NDJlNTBhMWYxYmVjZjUxNzk3MTkwMzFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgKQEAgLTgyLDcgKzgyLDcgQEAg
cHVibGljOgogICAgIC8vIFBhcnQgb2YgdGhlIHByb3RvY29sLgogICAgIHZvaWQgc2V0QnJlYWtw
b2ludHNBY3RpdmUoRXJyb3JTdHJpbmcqLCBib29sIGFjdGl2ZSk7CiAKLSAgICB2b2lkIHNldEJy
ZWFrcG9pbnRCeVVybChFcnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYgdXJsLCBpbnQgbGluZU51
bWJlciwgY29uc3QgaW50KiBjb25zdCBvcHRpb25hbENvbHVtbk51bWJlciwgY29uc3QgU3RyaW5n
KiBjb25zdCBvcHRpb25hbENvbmRpdGlvbiwgU3RyaW5nKiBicmVha3BvaW50SWQsIFJlZlB0cjxJ
bnNwZWN0b3JBcnJheT4qIGxvY2F0aW9ucyk7CisgICAgdm9pZCBzZXRCcmVha3BvaW50QnlVcmwo
RXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIHVybCwgaW50IGxpbmVOdW1iZXIsIGNvbnN0IGlu
dCogY29uc3Qgb3B0aW9uYWxDb2x1bW5OdW1iZXIsIGNvbnN0IFN0cmluZyogY29uc3Qgb3B0aW9u
YWxDb25kaXRpb24sIGNvbnN0IGJvb2wqIGNvbnN0IG9wdGlvbmFsSXNSZWdleCwgU3RyaW5nKiBi
cmVha3BvaW50SWQsIFJlZlB0cjxJbnNwZWN0b3JBcnJheT4qIGxvY2F0aW9ucyk7CiAgICAgdm9p
ZCBzZXRCcmVha3BvaW50KEVycm9yU3RyaW5nKiwgUGFzc1JlZlB0cjxJbnNwZWN0b3JPYmplY3Q+
IGxvY2F0aW9uLCBjb25zdCBTdHJpbmcqIGNvbnN0IG9wdGlvbmFsQ29uZGl0aW9uLCBTdHJpbmcq
IGJyZWFrcG9pbnRJZCwgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4qIGFjdHVhbExvY2F0aW9uKTsK
ICAgICB2b2lkIHJlbW92ZUJyZWFrcG9pbnQoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIGJy
ZWFrcG9pbnRJZCk7CiAgICAgdm9pZCBjb250aW51ZVRvTG9jYXRpb24oRXJyb3JTdHJpbmcqLCBQ
YXNzUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gbG9jYXRpb24pOwo=
</data>
<flag name="review"
          id="96541"
          type_id="1"
          status="+"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>