<?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>28438</bug_id>
          
          <creation_ts>2009-08-18 15:35:07 -0700</creation_ts>
          <short_desc>Browser hangs on opening Web Inspector.</short_desc>
          <delta_ts>2009-08-21 00:49:56 -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>1</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aroben</cc>
    
    <cc>barraclough</cc>
    
    <cc>joepeck</cc>
    
    <cc>oliver</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>141297</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-08-18 15:35:07 -0700</bug_when>
    <thetext>1. Open Web Inspector

Expected: All Ok
Actual: Browser hangs:

#0	0x006a59f7 in WTF::HashTable&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt;, std::pair&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt;, JSC::SymbolTableEntry&gt;, WTF::PairFirstExtractor&lt;std::pair&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt;, JSC::SymbolTableEntry&gt; &gt;, JSC::IdentifierRepHash, WTF::PairHashTraits&lt;WTF::HashTraits&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt; &gt;, JSC::SymbolTableIndexHashTraits&gt;, WTF::HashTraits&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt; &gt; &gt;::lookup&lt;JSC::UString::Rep*, WTF::RefPtrHashMapRawKeyTranslator&lt;JSC::UString::Rep*, std::pair&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt;, JSC::SymbolTableEntry&gt;, WTF::PairHashTraits&lt;WTF::HashTraits&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt; &gt;, JSC::SymbolTableIndexHashTraits&gt;, JSC::IdentifierRepHash&gt; &gt; at HashTable.h:486
#1	0x006a5a88 in WTF::HashMap&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt;, JSC::SymbolTableEntry, JSC::IdentifierRepHash, WTF::HashTraits&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt; &gt;, JSC::SymbolTableIndexHashTraits&gt;::inlineGet at RefPtrHashMap.h:270
#2	0x006a5cd2 in WTF::HashMap&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt;, JSC::SymbolTableEntry, JSC::IdentifierRepHash, WTF::HashTraits&lt;WTF::RefPtr&lt;JSC::UString::Rep&gt; &gt;, JSC::SymbolTableIndexHashTraits&gt;::get at RefPtrHashMap.h:280
#3	0x00610863 in JSC::BytecodeGenerator::findScopedProperty at BytecodeGenerator.cpp:987
#4	0x006214d4 in JSC::FunctionCallResolveNode::emitBytecode at Nodes.cpp:348
#5	0x006b26d9 in JSC::BytecodeGenerator::emitNode at BytecodeGenerator.h:178
#6	0x00624f9d in JSC::ExprStatementNode::emitBytecode at Nodes.cpp:1278
#7	0x006b26d9 in JSC::BytecodeGenerator::emitNode at BytecodeGenerator.h:178
#8	0x00621aa2 in JSC::statementListEmitCode at Nodes.cpp:1245
#9	0x00621e8b in JSC::BlockNode::emitBytecode at Nodes.cpp:1252
#10	0x006b26d9 in JSC::BytecodeGenerator::emitNode at BytecodeGenerator.h:178
#11	0x00621aa2 in JSC::statementListEmitCode at Nodes.cpp:1245
#12	0x00621b0c in JSC::FunctionBodyNode::emitBytecode at Nodes.cpp:1985
#13	0x00610503 in JSC::BytecodeGenerator::generate at BytecodeGenerator.cpp:144
#14	0x00767730 in JSC::FunctionExecutable::generateBytecode at Executable.cpp:87
#15	0x006de33f in JSC::FunctionExecutable::bytecode at Executable.h:212
#16	0x006cae27 in JSC::Interpreter::execute at Interpreter.cpp:701
#17	0x0062c4de in JSC::JSFunction::call at JSFunction.cpp:122
#18	0x0062c5b9 in JSC::call at CallData.cpp:39
#19	0x040e109e in WebCore::ScheduledAction::executeFunctionInContext at ScheduledAction.cpp:105
#20	0x040e1419 in WebCore::ScheduledAction::execute at ScheduledAction.cpp:125
#21	0x040e14e3 in WebCore::ScheduledAction::execute at ScheduledAction.cpp:76
#22	0x03b4f685 in WebCore::DOMTimer::fired at DOMTimer.cpp:124
#23	0x04220f01 in WebCore::ThreadTimers::fireTimers at ThreadTimers.cpp:111
#24	0x0422111d in WebCore::ThreadTimers::sharedTimerFiredInternal at ThreadTimers.cpp:141
#25	0x04221169 in WebCore::ThreadTimers::sharedTimerFired at ThreadTimers.cpp:122
#26	0x04110c38 in WebCore::timerFired at SharedTimerMac.mm:86
#27	0x93e0f8f5 in CFRunLoopRunSpecific
#28	0x93e0faa8 in CFRunLoopRunInMode
#29	0x943a72ac in RunCurrentEventLoopInMode
#30	0x943a70c5 in ReceiveNextEventCommon
#31	0x943a6f39 in BlockUntilNextEventMatchingListInMode
#32	0x94b496d5 in _DPSNextEvent
#33	0x94b48f88 in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]
#34	0x0000c303 in ??
#35	0x94b41f9f in -[NSApplication run]
#36	0x94b0f1d8 in NSApplicationMain
#37	0x00002c92 in ??</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141300</commentid>
    <comment_count>1</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-08-18 15:56:44 -0700</bug_when>
    <thetext>Reverting r47412 [by barraclough@apple.com] fixes the issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141338</commentid>
    <comment_count>2</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-08-18 17:51:47 -0700</bug_when>
    <thetext>I got the following with gdb:

  Program received signal EXC_BAD_ACCESS, Could not access memory.
  Reason: KERN_PROTECTION_FAILURE at address: 0x00000008
  0x00611f6f in JSC::MarkStack::appendValues () at /Users/joe/WebKit/JavaScriptCore/runtime/JSActivation.cpp:63
  63	    markStack.appendValues(registerArray, count);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141605</commentid>
    <comment_count>3</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2009-08-19 14:41:45 -0700</bug_when>
    <thetext>Cannot reproduce the bug.
What platform are you on / what websites can you repro the issue on?  Is this 100% reproducible for you?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141740</commentid>
    <comment_count>4</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-08-19 23:01:11 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Cannot reproduce the bug.
&gt; What platform are you on / what websites can you repro the issue on?  Is this
&gt; 100% reproducible for you?

- 100% reproducible
- any site, try google.com
- Mac OS 10.5.8, Safari 4.0.3, 32bit.

I know Joseph had to revert your change since it was hitting him as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141775</commentid>
    <comment_count>5</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-08-20 22:35:30 -0700</bug_when>
    <thetext>I suspect (based on the backtrace) that the hang is actually ReportCrash taking forever to analyse a debug build.

The issue is that when debugging is enabled all the codeblocks for all existing functions get erased.  Now if we imagine a scenario:

    function createClosure() {
        var a = &quot;Argh!!&quot;;
        return function() {
            return a;
        }
    }

    closure = createClosure();

Now we enable debugging, so neither the closure function nor the createClosure function retain their code blocks.  At this point we call &apos;closure()&apos;, which triggers recompilation of the closure function which requires a lookup of a, which then crashes as a scope lookup uses the symbol table of the (now deleted) code block of the createClosure function.

Happily i have a fix that i shall post shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141840</commentid>
    <comment_count>6</comment_count>
      <attachid>38365</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-08-21 00:22:16 -0700</bug_when>
    <thetext>Created attachment 38365
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141841</commentid>
    <comment_count>7</comment_count>
      <attachid>38365</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2009-08-21 00:38:19 -0700</bug_when>
    <thetext>Comment on attachment 38365
Patch v1

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141842</commentid>
    <comment_count>8</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-08-21 00:49:56 -0700</bug_when>
    <thetext>Committed r47627</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38365</attachid>
            <date>2009-08-21 00:22:16 -0700</date>
            <delta_ts>2009-08-21 00:38:19 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-28438-20090821002215.patch</filename>
            <type>text/plain</type>
            <size>12049</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCAwMjA1N2UzLi41MDIwMjFmIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNDIg
QEAKIDIwMDktMDgtMjAgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAorICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCcm93c2VyIGhhbmdzIG9u
IG9wZW5pbmcgV2ViIEluc3BlY3Rvci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI4NDM4CisKKyAgICAgICAgQ29kZSBnZW5lcmF0aW9uIG5lZWRzIHRv
IGJlIGFibGUgdG8gd2FsayB0aGUgZW50aXJlIHNjb3BlY2hhaW4gaW4gc29tZQorICAgICAgICBj
YXNlcywgaG93ZXZlciB0aGUgc3ltYm9sIHRhYmxlIHVzZWQgYnkgYWN0aXZhdGlvbnMgd2FzIGEg
bWVtYmVyIG9mIHRoZQorICAgICAgICBjb2RlYmxvY2suICBGb2xsb3dpbmcgcmVjb21waWxhdGlv
biB0aGlzIG1heSBubyBsb25nZXIgZXhpc3QsIGxlYWRpbmcKKyAgICAgICAgdG8gYSBjcmFzaCBv
ciBoYW5nIG9uIGxvb2t1cC4KKworICAgICAgICBXZSBmaXggdGhpcyBieSBpbnRyb2R1Y2luZyBh
IHJlZmNvdW50ZWQgU3ltYm9sVGFibGUgc3ViY2xhc3MsIFNoYXJlZFN5bWJvbFRhYmxlLAorICAg
ICAgICBmb3IgdGhlIENvZGVCbG9ja3MgdXNlZCBieSBmdW5jdGlvbiBjb2RlLiAgVGhpcyBhbGxv
d3MgYWN0aXZhdGlvbnMgdG8KKyAgICAgICAgbWFpbnRhaW4gb3duZXJzaGlwIG9mIGEgY29weSBv
ZiB0aGUgc3ltYm9sIHRhYmxlIGV2ZW4gYWZ0ZXIgcmVjb21waWxhdGlvbiBzbworICAgICAgICB0
aGV5IGNhbiBjb250aW51ZSB0byB3b3JrLgorCisgICAgICAgICogYnl0ZWNvZGUvQ29kZUJsb2Nr
LmNwcDoKKyAgICAgICAgKEpTQzo6Q29kZUJsb2NrOjpDb2RlQmxvY2spOgorICAgICAgICAqIGJ5
dGVjb2RlL0NvZGVCbG9jay5oOgorICAgICAgICAoSlNDOjpDb2RlQmxvY2s6OnN5bWJvbFRhYmxl
KToKKyAgICAgICAgKEpTQzo6Q29kZUJsb2NrOjpzaGFyZWRTeW1ib2xUYWJsZSk6CisgICAgICAg
IChKU0M6Okdsb2JhbENvZGVCbG9jazo6R2xvYmFsQ29kZUJsb2NrKToKKyAgICAgICAgKEpTQzo6
RnVuY3Rpb25Db2RlQmxvY2s6OkZ1bmN0aW9uQ29kZUJsb2NrKToKKyAgICAgICAgKEpTQzo6RnVu
Y3Rpb25Db2RlQmxvY2s6On5GdW5jdGlvbkNvZGVCbG9jayk6CisgICAgICAgICogaW50ZXJwcmV0
ZXIvSW50ZXJwcmV0ZXIuY3BwOgorICAgICAgICAoSlNDOjpJbnRlcnByZXRlcjo6cmV0cmlldmVB
cmd1bWVudHMpOgorICAgICAgICAqIHJ1bnRpbWUvRXhlY3V0YWJsZS5jcHA6CisgICAgICAgIChK
U0M6OkV2YWxFeGVjdXRhYmxlOjpnZW5lcmF0ZUJ5dGVjb2RlKToKKyAgICAgICAgKEpTQzo6RnVu
Y3Rpb25FeGVjdXRhYmxlOjpnZW5lcmF0ZUJ5dGVjb2RlKToKKyAgICAgICAgKEpTQzo6RnVuY3Rp
b25FeGVjdXRhYmxlOjpyZXBhcnNlRXhjZXB0aW9uSW5mbyk6CisgICAgICAgIChKU0M6OkV2YWxF
eGVjdXRhYmxlOjpyZXBhcnNlRXhjZXB0aW9uSW5mbyk6CisgICAgICAgICogcnVudGltZS9KU0Fj
dGl2YXRpb24uaDoKKyAgICAgICAgKEpTQzo6SlNBY3RpdmF0aW9uOjpKU0FjdGl2YXRpb25EYXRh
OjpKU0FjdGl2YXRpb25EYXRhKToKKyAgICAgICAgKEpTQzo6SlNBY3RpdmF0aW9uOjpKU0FjdGl2
YXRpb25EYXRhOjp+SlNBY3RpdmF0aW9uRGF0YSk6CisgICAgICAgICogcnVudGltZS9TeW1ib2xU
YWJsZS5oOgorCisyMDA5LTA4LTIwICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CisK
ICAgICAgICAgUmV2aWV3ZWQgYnkgR2F2aW4gQmFycmFjbG91Z2guCiAKICAgICAgICAgUkVHUkVT
U0lPTjogZmFzdC9wcm9maWxlci9jYWxsLmh0bWwgaXMgY3Jhc2hpbmcgb2NjYXNpb25hbGx5CmRp
ZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwIGIvSmF2YVNj
cmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAppbmRleCBkNTQwZDZkLi43ZDkzNzE3IDEw
MDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwCisrKyBiL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5jcHAKQEAgLTEyNDgsNyArMTI0OCw3IEBA
IHZvaWQgQ29kZUJsb2NrOjpkdW1wU3RhdGlzdGljcygpCiAjZW5kaWYKIH0KIAotQ29kZUJsb2Nr
OjpDb2RlQmxvY2soRXhlY3V0YWJsZUJhc2UqIG93bmVyRXhlY3V0YWJsZSwgQ29kZVR5cGUgY29k
ZVR5cGUsIFBhc3NSZWZQdHI8U291cmNlUHJvdmlkZXI+IHNvdXJjZVByb3ZpZGVyLCB1bnNpZ25l
ZCBzb3VyY2VPZmZzZXQpCitDb2RlQmxvY2s6OkNvZGVCbG9jayhFeGVjdXRhYmxlQmFzZSogb3du
ZXJFeGVjdXRhYmxlLCBDb2RlVHlwZSBjb2RlVHlwZSwgUGFzc1JlZlB0cjxTb3VyY2VQcm92aWRl
cj4gc291cmNlUHJvdmlkZXIsIHVuc2lnbmVkIHNvdXJjZU9mZnNldCwgU3ltYm9sVGFibGUqIHN5
bVRhYikKICAgICA6IG1fbnVtQ2FsbGVlUmVnaXN0ZXJzKDApCiAgICAgLCBtX251bVZhcnMoMCkK
ICAgICAsIG1fbnVtUGFyYW1ldGVycygwKQpAQCAtMTI2Myw2ICsxMjYzLDcgQEAgQ29kZUJsb2Nr
OjpDb2RlQmxvY2soRXhlY3V0YWJsZUJhc2UqIG93bmVyRXhlY3V0YWJsZSwgQ29kZVR5cGUgY29k
ZVR5cGUsIFBhc3NSZWYKICAgICAsIG1fY29kZVR5cGUoY29kZVR5cGUpCiAgICAgLCBtX3NvdXJj
ZShzb3VyY2VQcm92aWRlcikKICAgICAsIG1fc291cmNlT2Zmc2V0KHNvdXJjZU9mZnNldCkKKyAg
ICAsIG1fc3ltYm9sVGFibGUoc3ltVGFiKQogICAgICwgbV9leGNlcHRpb25JbmZvKG5ldyBFeGNl
cHRpb25JbmZvKQogewogICAgIEFTU0VSVChtX3NvdXJjZSk7CmRpZmYgLS1naXQgYS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suaCBiL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Nv
ZGVCbG9jay5oCmluZGV4IDFjNTg5NTUuLjYwZjJhYTMgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRD
b3JlL2J5dGVjb2RlL0NvZGVCbG9jay5oCisrKyBiL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Nv
ZGVCbG9jay5oCkBAIC0yNjEsOSArMjYxLDkgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgY2xhc3Mg
Q29kZUJsb2NrIDogcHVibGljIEZhc3RBbGxvY0Jhc2UgewogICAgICAgICBmcmllbmQgY2xhc3Mg
SklUOwogICAgIHByb3RlY3RlZDoKLSAgICAgICAgQ29kZUJsb2NrKEV4ZWN1dGFibGVCYXNlKiBv
d25lckV4ZWN1dGFibGUsIENvZGVUeXBlLCBQYXNzUmVmUHRyPFNvdXJjZVByb3ZpZGVyPiwgdW5z
aWduZWQgc291cmNlT2Zmc2V0KTsKKyAgICAgICAgQ29kZUJsb2NrKEV4ZWN1dGFibGVCYXNlKiBv
d25lckV4ZWN1dGFibGUsIENvZGVUeXBlLCBQYXNzUmVmUHRyPFNvdXJjZVByb3ZpZGVyPiwgdW5z
aWduZWQgc291cmNlT2Zmc2V0LCBTeW1ib2xUYWJsZSogc3ltYm9sVGFibGUpOwogICAgIHB1Ymxp
YzoKLSAgICAgICAgfkNvZGVCbG9jaygpOworICAgICAgICB2aXJ0dWFsIH5Db2RlQmxvY2soKTsK
IAogICAgICAgICB2b2lkIG1hcmtBZ2dyZWdhdGUoTWFya1N0YWNrJik7CiAgICAgICAgIHZvaWQg
cmVmU3RydWN0dXJlcyhJbnN0cnVjdGlvbiogdlBDKSBjb25zdDsKQEAgLTQ2Niw3ICs0NjYsOCBA
QCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgU3RyaW5nSnVtcFRhYmxlJiBzdHJpbmdTd2l0Y2hK
dW1wVGFibGUoaW50IHRhYmxlSW5kZXgpIHsgQVNTRVJUKG1fcmFyZURhdGEpOyByZXR1cm4gbV9y
YXJlRGF0YS0+bV9zdHJpbmdTd2l0Y2hKdW1wVGFibGVzW3RhYmxlSW5kZXhdOyB9CiAKIAotICAg
ICAgICBTeW1ib2xUYWJsZSYgc3ltYm9sVGFibGUoKSB7IHJldHVybiBtX3N5bWJvbFRhYmxlOyB9
CisgICAgICAgIFN5bWJvbFRhYmxlKiBzeW1ib2xUYWJsZSgpIHsgcmV0dXJuIG1fc3ltYm9sVGFi
bGU7IH0KKyAgICAgICAgU2hhcmVkU3ltYm9sVGFibGUqIHNoYXJlZFN5bWJvbFRhYmxlKCkgeyBB
U1NFUlQobV9jb2RlVHlwZSA9PSBGdW5jdGlvbkNvZGUpOyByZXR1cm4gc3RhdGljX2Nhc3Q8U2hh
cmVkU3ltYm9sVGFibGUqPihtX3N5bWJvbFRhYmxlKTsgfQogCiAgICAgICAgIEV2YWxDb2RlQ2Fj
aGUmIGV2YWxDb2RlQ2FjaGUoKSB7IGNyZWF0ZVJhcmVEYXRhSWZOZWNlc3NhcnkoKTsgcmV0dXJu
IG1fcmFyZURhdGEtPm1fZXZhbENvZGVDYWNoZTsgfQogCkBAIC01MzAsNyArNTMxLDcgQEAgbmFt
ZXNwYWNlIEpTQyB7CiAgICAgICAgIFZlY3RvcjxSZWZQdHI8RnVuY3Rpb25FeGVjdXRhYmxlPiA+
IG1fZnVuY3Rpb25EZWNsczsKICAgICAgICAgVmVjdG9yPFJlZlB0cjxGdW5jdGlvbkV4ZWN1dGFi
bGU+ID4gbV9mdW5jdGlvbkV4cHJzOwogCi0gICAgICAgIFN5bWJvbFRhYmxlIG1fc3ltYm9sVGFi
bGU7CisgICAgICAgIFN5bWJvbFRhYmxlKiBtX3N5bWJvbFRhYmxlOwogCiAgICAgICAgIE93blB0
cjxFeGNlcHRpb25JbmZvPiBtX2V4Y2VwdGlvbkluZm87CiAKQEAgLTU2MCw3ICs1NjEsNyBAQCBu
YW1lc3BhY2UgSlNDIHsKICAgICBjbGFzcyBHbG9iYWxDb2RlQmxvY2sgOiBwdWJsaWMgQ29kZUJs
b2NrIHsKICAgICBwdWJsaWM6CiAgICAgICAgIEdsb2JhbENvZGVCbG9jayhFeGVjdXRhYmxlQmFz
ZSogb3duZXJFeGVjdXRhYmxlLCBDb2RlVHlwZSBjb2RlVHlwZSwgUGFzc1JlZlB0cjxTb3VyY2VQ
cm92aWRlcj4gc291cmNlUHJvdmlkZXIsIHVuc2lnbmVkIHNvdXJjZU9mZnNldCwgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCkKLSAgICAgICAgICAgIDogQ29kZUJsb2NrKG93bmVyRXhlY3V0
YWJsZSwgY29kZVR5cGUsIHNvdXJjZVByb3ZpZGVyLCBzb3VyY2VPZmZzZXQpCisgICAgICAgICAg
ICA6IENvZGVCbG9jayhvd25lckV4ZWN1dGFibGUsIGNvZGVUeXBlLCBzb3VyY2VQcm92aWRlciwg
c291cmNlT2Zmc2V0LCAmbV91bnNoYXJlZFN5bWJvbFRhYmxlKQogICAgICAgICAgICAgLCBtX2ds
b2JhbE9iamVjdChnbG9iYWxPYmplY3QpCiAgICAgICAgIHsKICAgICAgICAgICAgIG1fZ2xvYmFs
T2JqZWN0LT5jb2RlQmxvY2tzKCkuYWRkKHRoaXMpOwpAQCAtNTc2LDYgKzU3Nyw3IEBAIG5hbWVz
cGFjZSBKU0MgewogCiAgICAgcHJpdmF0ZToKICAgICAgICAgSlNHbG9iYWxPYmplY3QqIG1fZ2xv
YmFsT2JqZWN0OyAvLyBGb3IgcHJvZ3JhbSBhbmQgZXZhbCBub2RlcywgdGhlIGdsb2JhbCBvYmpl
Y3QgdGhhdCBtYXJrcyB0aGUgY29uc3RhbnQgcG9vbC4KKyAgICAgICAgU3ltYm9sVGFibGUgbV91
bnNoYXJlZFN5bWJvbFRhYmxlOwogICAgIH07CiAKICAgICBjbGFzcyBQcm9ncmFtQ29kZUJsb2Nr
IDogcHVibGljIEdsb2JhbENvZGVCbG9jayB7CkBAIC02MTEsMTAgKzYxMywxOCBAQCBuYW1lc3Bh
Y2UgSlNDIHsKIAogICAgIGNsYXNzIEZ1bmN0aW9uQ29kZUJsb2NrIDogcHVibGljIENvZGVCbG9j
ayB7CiAgICAgcHVibGljOgorICAgICAgICAvLyBSYXRoZXIgdGhhbiB1c2luZyB0aGUgdXN1YWwg
UmVmQ291bnRlZDo6Y3JlYXRlIGlkaW9tIGZvciBTaGFyZWRTeW1ib2xUYWJsZSB3ZSBqdXN0IHVz
ZSBuZXcKKyAgICAgICAgLy8gYXMgd2UgbmVlZCB0byBpbml0aWFsaXNlIHRoZSBDb2RlQmxvY2sg
YmVmb3JlIHdlIGNvdWxkIGluaXRpYWxpc2UgYW55IFJlZlB0ciB0byBob2xkIHRoZSBzaGFyZWQK
KyAgICAgICAgLy8gc3ltYm9sIHRhYmxlLCBzbyB3ZSBqdXN0IHBhc3MgYXMgYSByYXcgcG9pbnRl
ciB3aXRoIGEgcmVmIGNvdW50IG9mIDEuICBXZSB0aGVuIG1hbnVhbGx5IGRlcmVmCisgICAgICAg
IC8vIGluIHRoZSBkZXN0cnVjdG9yLgogICAgICAgICBGdW5jdGlvbkNvZGVCbG9jayhGdW5jdGlv
bkV4ZWN1dGFibGUqIG93bmVyRXhlY3V0YWJsZSwgQ29kZVR5cGUgY29kZVR5cGUsIFBhc3NSZWZQ
dHI8U291cmNlUHJvdmlkZXI+IHNvdXJjZVByb3ZpZGVyLCB1bnNpZ25lZCBzb3VyY2VPZmZzZXQp
Ci0gICAgICAgICAgICA6IENvZGVCbG9jayhvd25lckV4ZWN1dGFibGUsIGNvZGVUeXBlLCBzb3Vy
Y2VQcm92aWRlciwgc291cmNlT2Zmc2V0KQorICAgICAgICAgICAgOiBDb2RlQmxvY2sob3duZXJF
eGVjdXRhYmxlLCBjb2RlVHlwZSwgc291cmNlUHJvdmlkZXIsIHNvdXJjZU9mZnNldCwgbmV3IFNo
YXJlZFN5bWJvbFRhYmxlKQogICAgICAgICB7CiAgICAgICAgIH0KKyAgICAgICAgfkZ1bmN0aW9u
Q29kZUJsb2NrKCkKKyAgICAgICAgeworICAgICAgICAgICAgc2hhcmVkU3ltYm9sVGFibGUoKS0+
ZGVyZWYoKTsKKyAgICAgICAgfQogICAgIH07CiAKICAgICBpbmxpbmUgUmVnaXN0ZXImIEV4ZWNT
dGF0ZTo6cihpbnQgaW5kZXgpCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRl
ci9JbnRlcnByZXRlci5jcHAgYi9KYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9JbnRlcnByZXRl
ci5jcHAKaW5kZXggOGU4NWY1My4uYzY3NmQwZSAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUv
aW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIuY3BwCisrKyBiL0phdmFTY3JpcHRDb3JlL2ludGVycHJl
dGVyL0ludGVycHJldGVyLmNwcApAQCAtMzg0Miw3ICszODQyLDcgQEAgSlNWYWx1ZSBJbnRlcnBy
ZXRlcjo6cmV0cmlldmVBcmd1bWVudHMoQ2FsbEZyYW1lKiBjYWxsRnJhbWUsIEpTRnVuY3Rpb24q
IGZ1bmN0aW8KICAgICBDb2RlQmxvY2sqIGNvZGVCbG9jayA9IGZ1bmN0aW9uQ2FsbEZyYW1lLT5j
b2RlQmxvY2soKTsKICAgICBpZiAoY29kZUJsb2NrLT51c2VzQXJndW1lbnRzKCkpIHsKICAgICAg
ICAgQVNTRVJUKGNvZGVCbG9jay0+Y29kZVR5cGUoKSA9PSBGdW5jdGlvbkNvZGUpOwotICAgICAg
ICBTeW1ib2xUYWJsZSYgc3ltYm9sVGFibGUgPSBjb2RlQmxvY2stPnN5bWJvbFRhYmxlKCk7Cisg
ICAgICAgIFN5bWJvbFRhYmxlJiBzeW1ib2xUYWJsZSA9ICpjb2RlQmxvY2stPnN5bWJvbFRhYmxl
KCk7CiAgICAgICAgIGludCBhcmd1bWVudHNJbmRleCA9IHN5bWJvbFRhYmxlLmdldChmdW5jdGlv
bkNhbGxGcmFtZS0+cHJvcGVydHlOYW1lcygpLmFyZ3VtZW50cy51c3RyaW5nKCkucmVwKCkpLmdl
dEluZGV4KCk7CiAgICAgICAgIGlmICghZnVuY3Rpb25DYWxsRnJhbWUtPnIoYXJndW1lbnRzSW5k
ZXgpLmpzVmFsdWUoKSkgewogICAgICAgICAgICAgQXJndW1lbnRzKiBhcmd1bWVudHMgPSBuZXcg
KGNhbGxGcmFtZSkgQXJndW1lbnRzKGZ1bmN0aW9uQ2FsbEZyYW1lKTsKZGlmZiAtLWdpdCBhL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5jcHAgYi9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0V4ZWN1dGFibGUuY3BwCmluZGV4IGY2ZTJjMTUuLjZmNThjMzYgMTAwNjQ0Ci0tLSBhL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5jcHAKKysrIGIvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9FeGVjdXRhYmxlLmNwcApAQCAtNTUsNyArNTUsNyBAQCB2b2lkIEV2YWxFeGVjdXRh
YmxlOjpnZW5lcmF0ZUJ5dGVjb2RlKFNjb3BlQ2hhaW5Ob2RlKiBzY29wZUNoYWluTm9kZSkKIAog
ICAgIEFTU0VSVCghbV9ldmFsQ29kZUJsb2NrKTsKICAgICBtX2V2YWxDb2RlQmxvY2sgPSBuZXcg
RXZhbENvZGVCbG9jayh0aGlzLCBnbG9iYWxPYmplY3QsIHNvdXJjZSgpLnByb3ZpZGVyKCksIHNj
b3BlQ2hhaW4ubG9jYWxEZXB0aCgpKTsKLSAgICBPd25QdHI8Qnl0ZWNvZGVHZW5lcmF0b3I+IGdl
bmVyYXRvcihuZXcgQnl0ZWNvZGVHZW5lcmF0b3IoZXZhbE5vZGUoKSwgZ2xvYmFsT2JqZWN0LT5k
ZWJ1Z2dlcigpLCBzY29wZUNoYWluLCAmbV9ldmFsQ29kZUJsb2NrLT5zeW1ib2xUYWJsZSgpLCBt
X2V2YWxDb2RlQmxvY2spKTsKKyAgICBPd25QdHI8Qnl0ZWNvZGVHZW5lcmF0b3I+IGdlbmVyYXRv
cihuZXcgQnl0ZWNvZGVHZW5lcmF0b3IoZXZhbE5vZGUoKSwgZ2xvYmFsT2JqZWN0LT5kZWJ1Z2dl
cigpLCBzY29wZUNoYWluLCBtX2V2YWxDb2RlQmxvY2stPnN5bWJvbFRhYmxlKCksIG1fZXZhbENv
ZGVCbG9jaykpOwogICAgIGdlbmVyYXRvci0+Z2VuZXJhdGUoKTsKICAgICAKICAgICBldmFsTm9k
ZSgpLT5kZXN0cm95RGF0YSgpOwpAQCAtODMsNyArODMsNyBAQCB2b2lkIEZ1bmN0aW9uRXhlY3V0
YWJsZTo6Z2VuZXJhdGVCeXRlY29kZShTY29wZUNoYWluTm9kZSogc2NvcGVDaGFpbk5vZGUpCiAK
ICAgICBBU1NFUlQoIW1fY29kZUJsb2NrKTsKICAgICBtX2NvZGVCbG9jayA9IG5ldyBGdW5jdGlv
bkNvZGVCbG9jayh0aGlzLCBGdW5jdGlvbkNvZGUsIHNvdXJjZSgpLnByb3ZpZGVyKCksIHNvdXJj
ZSgpLnN0YXJ0T2Zmc2V0KCkpOwotICAgIE93blB0cjxCeXRlY29kZUdlbmVyYXRvcj4gZ2VuZXJh
dG9yKG5ldyBCeXRlY29kZUdlbmVyYXRvcihib2R5KCksIGdsb2JhbE9iamVjdC0+ZGVidWdnZXIo
KSwgc2NvcGVDaGFpbiwgJm1fY29kZUJsb2NrLT5zeW1ib2xUYWJsZSgpLCBtX2NvZGVCbG9jaykp
OworICAgIE93blB0cjxCeXRlY29kZUdlbmVyYXRvcj4gZ2VuZXJhdG9yKG5ldyBCeXRlY29kZUdl
bmVyYXRvcihib2R5KCksIGdsb2JhbE9iamVjdC0+ZGVidWdnZXIoKSwgc2NvcGVDaGFpbiwgbV9j
b2RlQmxvY2stPnN5bWJvbFRhYmxlKCksIG1fY29kZUJsb2NrKSk7CiAgICAgZ2VuZXJhdG9yLT5n
ZW5lcmF0ZSgpOwogICAgIG1fbnVtUGFyYW1ldGVycyA9IG1fY29kZUJsb2NrLT5tX251bVBhcmFt
ZXRlcnM7CiAgICAgQVNTRVJUKG1fbnVtUGFyYW1ldGVycyk7CkBAIC0xNDcsNyArMTQ3LDcgQEAg
RXhjZXB0aW9uSW5mbyogRnVuY3Rpb25FeGVjdXRhYmxlOjpyZXBhcnNlRXhjZXB0aW9uSW5mbyhK
U0dsb2JhbERhdGEqIGdsb2JhbERhdGEKICAgICBPd25QdHI8Q29kZUJsb2NrPiBuZXdDb2RlQmxv
Y2sobmV3IEZ1bmN0aW9uQ29kZUJsb2NrKHRoaXMsIEZ1bmN0aW9uQ29kZSwgc291cmNlKCkucHJv
dmlkZXIoKSwgc291cmNlKCkuc3RhcnRPZmZzZXQoKSkpOwogICAgIGdsb2JhbERhdGEtPmZ1bmN0
aW9uQ29kZUJsb2NrQmVpbmdSZXBhcnNlZCA9IG5ld0NvZGVCbG9jay5nZXQoKTsKIAotICAgIE93
blB0cjxCeXRlY29kZUdlbmVyYXRvcj4gZ2VuZXJhdG9yKG5ldyBCeXRlY29kZUdlbmVyYXRvcihu
ZXdGdW5jdGlvbkJvZHkuZ2V0KCksIGdsb2JhbE9iamVjdC0+ZGVidWdnZXIoKSwgc2NvcGVDaGFp
biwgJm5ld0NvZGVCbG9jay0+c3ltYm9sVGFibGUoKSwgbmV3Q29kZUJsb2NrLmdldCgpKSk7Cisg
ICAgT3duUHRyPEJ5dGVjb2RlR2VuZXJhdG9yPiBnZW5lcmF0b3IobmV3IEJ5dGVjb2RlR2VuZXJh
dG9yKG5ld0Z1bmN0aW9uQm9keS5nZXQoKSwgZ2xvYmFsT2JqZWN0LT5kZWJ1Z2dlcigpLCBzY29w
ZUNoYWluLCBuZXdDb2RlQmxvY2stPnN5bWJvbFRhYmxlKCksIG5ld0NvZGVCbG9jay5nZXQoKSkp
OwogICAgIGdlbmVyYXRvci0+c2V0UmVnZW5lcmF0aW5nRm9yRXhjZXB0aW9uSW5mbyhzdGF0aWNf
Y2FzdDxGdW5jdGlvbkNvZGVCbG9jayo+KGNvZGVCbG9jaykpOwogICAgIGdlbmVyYXRvci0+Z2Vu
ZXJhdGUoKTsKIApAQCAtMTcyLDcgKzE3Miw3IEBAIEV4Y2VwdGlvbkluZm8qIEV2YWxFeGVjdXRh
YmxlOjpyZXBhcnNlRXhjZXB0aW9uSW5mbyhKU0dsb2JhbERhdGEqIGdsb2JhbERhdGEsIFNjCiAK
ICAgICBPd25QdHI8RXZhbENvZGVCbG9jaz4gbmV3Q29kZUJsb2NrKG5ldyBFdmFsQ29kZUJsb2Nr
KHRoaXMsIGdsb2JhbE9iamVjdCwgc291cmNlKCkucHJvdmlkZXIoKSwgc2NvcGVDaGFpbi5sb2Nh
bERlcHRoKCkpKTsKIAotICAgIE93blB0cjxCeXRlY29kZUdlbmVyYXRvcj4gZ2VuZXJhdG9yKG5l
dyBCeXRlY29kZUdlbmVyYXRvcihuZXdFdmFsQm9keS5nZXQoKSwgZ2xvYmFsT2JqZWN0LT5kZWJ1
Z2dlcigpLCBzY29wZUNoYWluLCAmbmV3Q29kZUJsb2NrLT5zeW1ib2xUYWJsZSgpLCBuZXdDb2Rl
QmxvY2suZ2V0KCkpKTsKKyAgICBPd25QdHI8Qnl0ZWNvZGVHZW5lcmF0b3I+IGdlbmVyYXRvcihu
ZXcgQnl0ZWNvZGVHZW5lcmF0b3IobmV3RXZhbEJvZHkuZ2V0KCksIGdsb2JhbE9iamVjdC0+ZGVi
dWdnZXIoKSwgc2NvcGVDaGFpbiwgbmV3Q29kZUJsb2NrLT5zeW1ib2xUYWJsZSgpLCBuZXdDb2Rl
QmxvY2suZ2V0KCkpKTsKICAgICBnZW5lcmF0b3ItPnNldFJlZ2VuZXJhdGluZ0ZvckV4Y2VwdGlv
bkluZm8oc3RhdGljX2Nhc3Q8RXZhbENvZGVCbG9jayo+KGNvZGVCbG9jaykpOwogICAgIGdlbmVy
YXRvci0+Z2VuZXJhdGUoKTsKIApkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FjdGl2YXRpb24uaCBiL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBY3RpdmF0aW9uLmgKaW5k
ZXggMjg1YWU2Ny4uNjQwYjkxYSAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FjdGl2YXRpb24uaAorKysgYi9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQWN0aXZhdGlvbi5o
CkBAIC03MCwxMCArNzAsMTcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICBwcml2YXRlOgogICAg
ICAgICBzdHJ1Y3QgSlNBY3RpdmF0aW9uRGF0YSA6IHB1YmxpYyBKU1ZhcmlhYmxlT2JqZWN0RGF0
YSB7Ci0gICAgICAgICAgICBKU0FjdGl2YXRpb25EYXRhKFBhc3NSZWZQdHI8RnVuY3Rpb25FeGVj
dXRhYmxlPiBmdW5jdGlvbkV4ZWN1dGFibGUsIFJlZ2lzdGVyKiByZWdpc3RlcnMpCi0gICAgICAg
ICAgICAgICAgOiBKU1ZhcmlhYmxlT2JqZWN0RGF0YSgmZnVuY3Rpb25FeGVjdXRhYmxlLT5nZW5l
cmF0ZWRCeXRlY29kZSgpLnN5bWJvbFRhYmxlKCksIHJlZ2lzdGVycykKLSAgICAgICAgICAgICAg
ICAsIGZ1bmN0aW9uRXhlY3V0YWJsZShmdW5jdGlvbkV4ZWN1dGFibGUpCisgICAgICAgICAgICBK
U0FjdGl2YXRpb25EYXRhKFBhc3NSZWZQdHI8RnVuY3Rpb25FeGVjdXRhYmxlPiBfZnVuY3Rpb25F
eGVjdXRhYmxlLCBSZWdpc3RlciogcmVnaXN0ZXJzKQorICAgICAgICAgICAgICAgIDogSlNWYXJp
YWJsZU9iamVjdERhdGEoX2Z1bmN0aW9uRXhlY3V0YWJsZS0+Z2VuZXJhdGVkQnl0ZWNvZGUoKS5z
eW1ib2xUYWJsZSgpLCByZWdpc3RlcnMpCisgICAgICAgICAgICAgICAgLCBmdW5jdGlvbkV4ZWN1
dGFibGUoX2Z1bmN0aW9uRXhlY3V0YWJsZSkKICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAvLyBXZSBoYXZlIHRvIG1hbnVhbGx5IHJlZiBhbmQgZGVyZWYgdGhlIHN5bWJvbCB0YWJsZSBh
cyBKU1ZhcmlhYmxlT2JqZWN0RGF0YQorICAgICAgICAgICAgICAgIC8vIGRvZXNuJ3Qga25vdyBh
Ym91dCBTaGFyZWRTeW1ib2xUYWJsZQorICAgICAgICAgICAgICAgIGZ1bmN0aW9uRXhlY3V0YWJs
ZS0+Z2VuZXJhdGVkQnl0ZWNvZGUoKS5zaGFyZWRTeW1ib2xUYWJsZSgpLT5yZWYoKTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIH5KU0FjdGl2YXRpb25EYXRhKCkKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICBzdGF0aWNfY2FzdDxTaGFyZWRTeW1ib2xUYWJsZSo+KHN5bWJvbFRh
YmxlKS0+ZGVyZWYoKTsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgUmVmUHRyPEZ1bmN0
aW9uRXhlY3V0YWJsZT4gZnVuY3Rpb25FeGVjdXRhYmxlOwpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5oIGIvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1i
b2xUYWJsZS5oCmluZGV4IGMwMGY5NWEuLmY1ZTI2NjkgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU3ltYm9sVGFibGUuaAorKysgYi9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5
bWJvbFRhYmxlLmgKQEAgLTEyMSw2ICsxMjEsMTAgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICB0
eXBlZGVmIEhhc2hNYXA8UmVmUHRyPFVTdHJpbmc6OlJlcD4sIFN5bWJvbFRhYmxlRW50cnksIElk
ZW50aWZpZXJSZXBIYXNoLCBIYXNoVHJhaXRzPFJlZlB0cjxVU3RyaW5nOjpSZXA+ID4sIFN5bWJv
bFRhYmxlSW5kZXhIYXNoVHJhaXRzPiBTeW1ib2xUYWJsZTsKIAorICAgIGNsYXNzIFNoYXJlZFN5
bWJvbFRhYmxlIDogcHVibGljIFN5bWJvbFRhYmxlLCBwdWJsaWMgUmVmQ291bnRlZDxTaGFyZWRT
eW1ib2xUYWJsZT4KKyAgICB7CisgICAgfTsKKyAgICAKIH0gLy8gbmFtZXNwYWNlIEpTQwogCiAj
ZW5kaWYgLy8gU3ltYm9sVGFibGVfaA==
</data>
<flag name="review"
          id="19400"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>