<?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>32442</bug_id>
          
          <creation_ts>2009-12-11 12:18:20 -0800</creation_ts>
          <short_desc>REGRESSION (r46972): Inspector console outputs the global value for a variable instead of the local value</short_desc>
          <delta_ts>2010-03-28 04:42:32 -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>JavaScriptCore</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>HasReduction, InRadar, Regression</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>28078</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>joepeck</cc>
    
    <cc>mjs</cc>
    
    <cc>oliver</cc>
    
    <cc>pfeldman</cc>
    
    <cc>socket.h</cc>
    
    <cc>spamfaenger</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>170870</commentid>
    <comment_count>0</comment_count>
      <attachid>44701</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-12-11 12:18:20 -0800</bug_when>
    <thetext>Created attachment 44701
Test case

* SUMMARY
When breaking inside a function with a local variable that masks a global variable, printing the variable shows the globally-scoped variable instead of the locally-scoped one.

* STEPS TO REPRODUCE
1. Launch Safari or WebKit nightly.
2. Enable JavaScript Debugging in the Web Inspector.
3. Load the test page.
4. Type &apos;x&apos; in the console and hit Enter.

* EXPECTED RESULTS
The console should print:  &quot;This is the local value&quot;

* ACTUAL RESULTS
This console prints:  &quot;This is the global value&quot;

* REGRESSION
This is a regression from shipping Safari 4.0.4.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>170885</commentid>
    <comment_count>1</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-12-11 12:57:14 -0800</bug_when>
    <thetext>The bisect-builds script reports:

Works: r47686  Fails: r48034

Breakpoints don&apos;t seem to work in the Inspector between r47686-r48004, so I couldn&apos;t narrow it down in that range.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>170888</commentid>
    <comment_count>2</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-12-11 13:00:38 -0800</bug_when>
    <thetext>CC-ing some Web Inspector developers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174975</commentid>
    <comment_count>3</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2009-12-26 17:35:30 -0800</bug_when>
    <thetext>*** Bug 32513 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184649</commentid>
    <comment_count>4</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2010-01-26 11:23:35 -0800</bug_when>
    <thetext>This appears to be a JavaScriptCore bug, not a Web Inspector bug, since it doesn&apos;t reproduce on Google Chrome for Mac 4.0.249.49.

Still occurs with WebKit nightly build r53845.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>186512</commentid>
    <comment_count>5</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-02-01 12:17:08 -0800</bug_when>
    <thetext>No longer reproduces in the current nightly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>186559</commentid>
    <comment_count>6</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2010-02-01 13:51:41 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; No longer reproduces in the current nightly

I still see &quot;This is the global value&quot; (which is the broken behavior) with WebKit nightly r54122.

Which nightly are you using, Oliver?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>186560</commentid>
    <comment_count>7</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2010-02-01 13:53:02 -0800</bug_when>
    <thetext>&lt;rdar://problem/7464737&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>186562</commentid>
    <comment_count>8</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-02-01 13:54:57 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #5)
&gt; &gt; No longer reproduces in the current nightly
&gt; 
&gt; I still see &quot;This is the global value&quot; (which is the broken behavior) with
&gt; WebKit nightly r54122.
&gt; 
&gt; Which nightly are you using, Oliver?

Wrong bug sorry :-(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193660</commentid>
    <comment_count>9</comment_count>
    <who name="Martin Häcker">spamfaenger</who>
    <bug_when>2010-02-25 02:31:39 -0800</bug_when>
    <thetext>Any progress here? I just spent another day hunting a bug in the wrong direction because of this. :/

Is there any help that you need? (Another testcase reduction perhpas?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>205061</commentid>
    <comment_count>10</comment_count>
      <attachid>51845</attachid>
    <who name="Dmitry Gorbik">socket.h</who>
    <bug_when>2010-03-27 15:56:04 -0700</bug_when>
    <thetext>Created attachment 51845
Proposed fix v1.0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>205064</commentid>
    <comment_count>11</comment_count>
      <attachid>51845</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-03-27 16:07:51 -0700</bug_when>
    <thetext>Comment on attachment 51845
Proposed fix v1.0

Looks great! One nit and we can land this!

&gt; +    if (!dontUseCommandLineAPI) {
&gt; +        expression = &quot;with (window.console._inspectorCommandLineAPI) { with (window) {\n&quot; + expression + &quot;\n} }&quot;;
&gt; +    }

Single-line conditions should not have {}.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>205065</commentid>
    <comment_count>12</comment_count>
      <attachid>51846</attachid>
    <who name="Dmitry Gorbik">socket.h</who>
    <bug_when>2010-03-27 16:12:21 -0700</bug_when>
    <thetext>Created attachment 51846
Proposed fix v1.1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>205087</commentid>
    <comment_count>13</comment_count>
      <attachid>51846</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-27 19:32:56 -0700</bug_when>
    <thetext>Comment on attachment 51846
Proposed fix v1.1

Clearing flags on attachment: 51846

Committed r56676: &lt;http://trac.webkit.org/changeset/56676&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>205088</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-27 19:33:01 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>205140</commentid>
    <comment_count>15</comment_count>
      <attachid>51846</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2010-03-28 03:51:02 -0700</bug_when>
    <thetext>Comment on attachment 51846
Proposed fix v1.1

&gt;+        Fix the regression caused by r28078: a global variable
&gt;+        definition masks a local one in an inspector console
&gt;+        https://bugs.webkit.org/show_bug.cgi?id=32442

r28078 doesn&apos;t seem to the be revision that caused the regression.
&lt;http://trac.webkit.org/changeset/28078&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>205143</commentid>
    <comment_count>16</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2010-03-28 04:06:23 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; (From update of attachment 51846 [details])
&gt; &gt;+        Fix the regression caused by r28078: a global variable
&gt; &gt;+        definition masks a local one in an inspector console
&gt; &gt;+        https://bugs.webkit.org/show_bug.cgi?id=32442
&gt; 
&gt; r28078 doesn&apos;t seem to the be revision that caused the regression.
&gt; &lt;http://trac.webkit.org/changeset/28078&gt;

Ah, I think you mean Bug 28078 which was fixed by r46972.
&lt;http://trac.webkit.org/changeset/46972&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>205145</commentid>
    <comment_count>17</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2010-03-28 04:18:05 -0700</bug_when>
    <thetext>Nice job on the fix, Dmitry!

Is it possible to write a LayoutTests/inspector test for this so it doesn&apos;t happen again?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>205152</commentid>
    <comment_count>18</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-03-28 04:42:32 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; Nice job on the fix, Dmitry!
&gt; 
&gt; Is it possible to write a LayoutTests/inspector test for this so it doesn&apos;t
&gt; happen again?

Technically, it is possible. However, we don&apos;t yet have layout tests that stop in debugger, so various problems are likely to arise.

Scenario for the test would be:
- In the layout test page, create a function that has debugger; statement. That&apos;s pretty much all you do on the layout page side, rest is happening on the inspector front-end.
- On the front-end side, enable debugger (this is done synchronously) and execute the function you created in previous step using InjectedScriptAccess.evaluate.
- Just before you do this evaluate, add a sniffer that would give your code control upon WebInspector.pausedScript call from the backend.
- As soon as pausedScript is called, get a reference to the call frame.
- Either synchronously or in setTimeout(0) execute InjectedScriptAccess.evaluateInCallFrame against your call frame with &quot;x&quot; expression.

tests are located under LayoutTests/inspector</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>44701</attachid>
            <date>2009-12-11 12:18:20 -0800</date>
            <delta_ts>2009-12-11 12:18:20 -0800</delta_ts>
            <desc>Test case</desc>
            <filename>Inspector console bug test.html</filename>
            <type>text/html</type>
            <size>777</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEvL0VOIgogICAiaHR0
cDovL3d3dy53My5vcmcvVFIvaHRtbDQvc3RyaWN0LmR0ZCI+Cgo8aHRtbCBsYW5nPSJlbiI+Cjxo
ZWFkPgoJPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7
IGNoYXJzZXQ9dXRmLTgiPgoJPHRpdGxlPkluc3BlY3RvciBDb25zb2xlIGJ1ZyB0ZXN0PC90aXRs
ZT4KCQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cgp3aW5kb3cueCA9ICJUaGlzIGlz
IHRoZSBnbG9iYWwgdmFsdWUiOwoKZnVuY3Rpb24gdGVzdEZ1bmN0aW9uKCkgewogIHZhciB4ID0g
IlRoaXMgaXMgdGhlIGxvY2FsIHZhbHVlIjsKICBjb25zb2xlLmxvZygnVHlwZSAieCIgaW50byB0
aGUgY29uc29sZSB3aGlsZSBzdG9wcGVkIGluc2lkZSB0ZXN0RnVuY3Rpb24oKSB0byBzZWUgdGhl
IGJ1ZyDigJQgaWYgaXQgc2hvd3MgdGhlIGdsb2JhbCB2YWx1ZSByYXRoZXIgdGhhbiB0aGUgbG9j
YWwgdmFsdWUsIHRoYXTigJlzIHRoZSBidWcuJyk7CiAgCiAgZGVidWdnZXI7Cn0KCnRlc3RGdW5j
dGlvbigpOwoKPC9zY3JpcHQ+CgkKPC9oZWFkPgo8Ym9keT4KClRvIHNlZSB0aGUgYnVnLCBlbmFi
bGUgSmF2YVNjcmlwdCBEZWJ1Z2dpbmcgaW5zaWRlIHRoZSBXZWIgSW5zcGVjdG9yIGFuZApyZWxv
YWQuICBUaGUgJ2RlYnVnZ2VyJyBzdGF0ZW1lbnQgc2hvdWxkIHRha2UgZWZmZWN0LCBhbmQgeW91
4oCZbGwgc2VlIHRoZSBidWcuCgo8L2JvZHk+CjwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>51845</attachid>
            <date>2010-03-27 15:56:04 -0700</date>
            <delta_ts>2010-03-27 16:12:21 -0700</delta_ts>
            <desc>Proposed fix v1.0</desc>
            <filename>mypatch</filename>
            <type>text/plain</type>
            <size>3586</size>
            <attacher name="Dmitry Gorbik">socket.h</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NjY3MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMTAtMDMtMjcgIERtaXRyeSBHb3JiaWsgIDxzb2NrZXQuaEBnbWFp
bC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Rml4IHRoZSByZWdyZXNzaW9uIGNhdXNlZCBieSByMjgwNzg6IGEgZ2xvYmFsIHZhcmlhYmxlCisg
ICAgICAgIGRlZmluaXRpb24gbWFza3MgYSBsb2NhbCBvbmUgaW4gYW4gaW5zcGVjdG9yIGNvbnNv
bGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyNDQy
CisKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0luamVjdGVkU2NyaXB0LmpzOgorICAg
ICAgICAoaW5qZWN0ZWRTY3JpcHRDb25zdHJ1Y3Rvcik6CisKIDIwMTAtMDMtMjYgIEpvc2VwaCBQ
ZWNvcmFybyAgPGpvZXBlY2tAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBQYXZl
bCBGZWxkbWFuLgpJbmRleDogV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0luamVjdGVkU2Ny
aXB0LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3Rl
ZFNjcmlwdC5qcwkocmV2aXNpb24gNTY0NDEpCisrKyBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvSW5qZWN0ZWRTY3JpcHQuanMJKHdvcmtpbmcgY29weSkKQEAgLTIzMCw3ICsyMzAsNyBAQCBJ
bmplY3RlZFNjcmlwdC5nZXRDb21wbGV0aW9ucyA9IGZ1bmN0aW9uCiAgICAgICAgICAgICBpZiAo
IWNhbGxGcmFtZSkKICAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHM7CiAgICAgICAgICAgICBp
ZiAoZXhwcmVzc2lvbikKLSAgICAgICAgICAgICAgICBleHByZXNzaW9uUmVzdWx0ID0gSW5qZWN0
ZWRTY3JpcHQuX2V2YWx1YXRlT24oY2FsbEZyYW1lLmV2YWx1YXRlLCBjYWxsRnJhbWUsIGV4cHJl
c3Npb24pOworICAgICAgICAgICAgICAgIGV4cHJlc3Npb25SZXN1bHQgPSBJbmplY3RlZFNjcmlw
dC5fZXZhbHVhdGVPbihjYWxsRnJhbWUuZXZhbHVhdGUsIGNhbGxGcmFtZSwgZXhwcmVzc2lvbiwg
dHJ1ZSk7CiAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAvLyBFdmFsdWF0ZSBp
bnRvIHByb3BlcnRpZXMgaW4gc2NvcGUgb2YgdGhlIHNlbGVjdGVkIGNhbGwgZnJhbWUuCiAgICAg
ICAgICAgICAgICAgdmFyIHNjb3BlQ2hhaW4gPSBjYWxsRnJhbWUuc2NvcGVDaGFpbjsKQEAgLTI1
OCwxMSArMjU4LDExIEBAIEluamVjdGVkU2NyaXB0LmV2YWx1YXRlID0gZnVuY3Rpb24oZXhwcmUK
ICAgICByZXR1cm4gSW5qZWN0ZWRTY3JpcHQuX2V2YWx1YXRlQW5kV3JhcChJbmplY3RlZFNjcmlw
dC5fd2luZG93KCkuZXZhbCwgSW5qZWN0ZWRTY3JpcHQuX3dpbmRvdygpLCBleHByZXNzaW9uLCBv
YmplY3RHcm91cCk7CiB9CiAKLUluamVjdGVkU2NyaXB0Ll9ldmFsdWF0ZUFuZFdyYXAgPSBmdW5j
dGlvbihldmFsRnVuY3Rpb24sIG9iamVjdCwgZXhwcmVzc2lvbiwgb2JqZWN0R3JvdXApCitJbmpl
Y3RlZFNjcmlwdC5fZXZhbHVhdGVBbmRXcmFwID0gZnVuY3Rpb24oZXZhbEZ1bmN0aW9uLCBvYmpl
Y3QsIGV4cHJlc3Npb24sIG9iamVjdEdyb3VwLCBkb250VXNlQ29tbWFuZExpbmVBUEkpCiB7CiAg
ICAgdmFyIHJlc3VsdCA9IHt9OwogICAgIHRyeSB7Ci0gICAgICAgIHJlc3VsdC52YWx1ZSA9IElu
amVjdGVkU2NyaXB0LndyYXBPYmplY3QoSW5qZWN0ZWRTY3JpcHQuX2V2YWx1YXRlT24oZXZhbEZ1
bmN0aW9uLCBvYmplY3QsIGV4cHJlc3Npb24pLCBvYmplY3RHcm91cCk7CisgICAgICAgIHJlc3Vs
dC52YWx1ZSA9IEluamVjdGVkU2NyaXB0LndyYXBPYmplY3QoSW5qZWN0ZWRTY3JpcHQuX2V2YWx1
YXRlT24oZXZhbEZ1bmN0aW9uLCBvYmplY3QsIGV4cHJlc3Npb24sIGRvbnRVc2VDb21tYW5kTGlu
ZUFQSSksIG9iamVjdEdyb3VwKTsKIAogICAgICAgICAvLyBIYW5kbGUgZXJyb3IgdGhhdCBtaWdo
dCBoYXZlIGhhcHBlbmVkIHdoaWxlIGRlc2NyaWJpbmcgcmVzdWx0LgogICAgICAgICBpZiAocmVz
dWx0LnZhbHVlLmVycm9yVGV4dCkgewpAQCAtMjc2LDEyICsyNzYsMTQgQEAgSW5qZWN0ZWRTY3Jp
cHQuX2V2YWx1YXRlQW5kV3JhcCA9IGZ1bmN0aQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLUlu
amVjdGVkU2NyaXB0Ll9ldmFsdWF0ZU9uID0gZnVuY3Rpb24oZXZhbEZ1bmN0aW9uLCBvYmplY3Qs
IGV4cHJlc3Npb24pCitJbmplY3RlZFNjcmlwdC5fZXZhbHVhdGVPbiA9IGZ1bmN0aW9uKGV2YWxG
dW5jdGlvbiwgb2JqZWN0LCBleHByZXNzaW9uLCBkb250VXNlQ29tbWFuZExpbmVBUEkpCiB7CiAg
ICAgSW5qZWN0ZWRTY3JpcHQuX2Vuc3VyZUNvbW1hbmRMaW5lQVBJSW5zdGFsbGVkKGV2YWxGdW5j
dGlvbiwgb2JqZWN0KTsKICAgICAvLyBTdXJyb3VuZCB0aGUgZXhwcmVzc2lvbiBpbiB3aXRoIHN0
YXRlbWVudHMgdG8gaW5qZWN0IG91ciBjb21tYW5kIGxpbmUgQVBJIHNvIHRoYXQKICAgICAvLyB0
aGUgd2luZG93IG9iamVjdCBwcm9wZXJ0aWVzIHN0aWxsIHRha2UgbW9yZSBwcmVjZWRlbnQgdGhh
biBvdXIgQVBJIGZ1bmN0aW9ucy4KLSAgICBleHByZXNzaW9uID0gIndpdGggKHdpbmRvdy5jb25z
b2xlLl9pbnNwZWN0b3JDb21tYW5kTGluZUFQSSkgeyB3aXRoICh3aW5kb3cpIHtcbiIgKyBleHBy
ZXNzaW9uICsgIlxufSB9IjsKKyAgICBpZiAoIWRvbnRVc2VDb21tYW5kTGluZUFQSSkgeworICAg
ICAgICBleHByZXNzaW9uID0gIndpdGggKHdpbmRvdy5jb25zb2xlLl9pbnNwZWN0b3JDb21tYW5k
TGluZUFQSSkgeyB3aXRoICh3aW5kb3cpIHtcbiIgKyBleHByZXNzaW9uICsgIlxufSB9IjsKKyAg
ICB9CiAgICAgdmFyIHZhbHVlID0gZXZhbEZ1bmN0aW9uLmNhbGwob2JqZWN0LCBleHByZXNzaW9u
KTsKIAogICAgIC8vIFdoZW4gZXZhbHVhdGluZyBvbiBjYWxsIGZyYW1lIGVycm9yIGlzIG5vdCB0
aHJvd24sIGJ1dCByZXR1cm5lZCBhcyBhIHZhbHVlLgpAQCAtNTc5LDcgKzU4MSw3IEBAIEluamVj
dGVkU2NyaXB0LmV2YWx1YXRlSW5DYWxsRnJhbWUgPSBmdW4KICAgICB2YXIgY2FsbEZyYW1lID0g
SW5qZWN0ZWRTY3JpcHQuX2NhbGxGcmFtZUZvcklkKGNhbGxGcmFtZUlkKTsKICAgICBpZiAoIWNh
bGxGcmFtZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVybiBJbmplY3RlZFNjcmlw
dC5fZXZhbHVhdGVBbmRXcmFwKGNhbGxGcmFtZS5ldmFsdWF0ZSwgY2FsbEZyYW1lLCBjb2RlLCBv
YmplY3RHcm91cCk7CisgICAgcmV0dXJuIEluamVjdGVkU2NyaXB0Ll9ldmFsdWF0ZUFuZFdyYXAo
Y2FsbEZyYW1lLmV2YWx1YXRlLCBjYWxsRnJhbWUsIGNvZGUsIG9iamVjdEdyb3VwLCB0cnVlKTsK
IH0KIAogSW5qZWN0ZWRTY3JpcHQuX2NhbGxGcmFtZUZvcklkID0gZnVuY3Rpb24oaWQpCg==
</data>
<flag name="review"
          id="35200"
          type_id="1"
          status="-"
          setter="pfeldman"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>51846</attachid>
            <date>2010-03-27 16:12:21 -0700</date>
            <delta_ts>2010-03-28 03:51:02 -0700</delta_ts>
            <desc>Proposed fix v1.1</desc>
            <filename>mypatch</filename>
            <type>text/plain</type>
            <size>3579</size>
            <attacher name="Dmitry Gorbik">socket.h</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NjY3MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMTAtMDMtMjcgIERtaXRyeSBHb3JiaWsgIDxzb2NrZXQuaEBnbWFp
bC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Rml4IHRoZSByZWdyZXNzaW9uIGNhdXNlZCBieSByMjgwNzg6IGEgZ2xvYmFsIHZhcmlhYmxlCisg
ICAgICAgIGRlZmluaXRpb24gbWFza3MgYSBsb2NhbCBvbmUgaW4gYW4gaW5zcGVjdG9yIGNvbnNv
bGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyNDQy
CisKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0luamVjdGVkU2NyaXB0LmpzOgorICAg
ICAgICAoaW5qZWN0ZWRTY3JpcHRDb25zdHJ1Y3Rvcik6CisKIDIwMTAtMDMtMjYgIEpvc2VwaCBQ
ZWNvcmFybyAgPGpvZXBlY2tAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBQYXZl
bCBGZWxkbWFuLgpJbmRleDogV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0luamVjdGVkU2Ny
aXB0LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3Rl
ZFNjcmlwdC5qcwkocmV2aXNpb24gNTY0NDEpCisrKyBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvSW5qZWN0ZWRTY3JpcHQuanMJKHdvcmtpbmcgY29weSkKQEAgLTIzMCw3ICsyMzAsNyBAQCBJ
bmplY3RlZFNjcmlwdC5nZXRDb21wbGV0aW9ucyA9IGZ1bmN0aW9uCiAgICAgICAgICAgICBpZiAo
IWNhbGxGcmFtZSkKICAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHM7CiAgICAgICAgICAgICBp
ZiAoZXhwcmVzc2lvbikKLSAgICAgICAgICAgICAgICBleHByZXNzaW9uUmVzdWx0ID0gSW5qZWN0
ZWRTY3JpcHQuX2V2YWx1YXRlT24oY2FsbEZyYW1lLmV2YWx1YXRlLCBjYWxsRnJhbWUsIGV4cHJl
c3Npb24pOworICAgICAgICAgICAgICAgIGV4cHJlc3Npb25SZXN1bHQgPSBJbmplY3RlZFNjcmlw
dC5fZXZhbHVhdGVPbihjYWxsRnJhbWUuZXZhbHVhdGUsIGNhbGxGcmFtZSwgZXhwcmVzc2lvbiwg
dHJ1ZSk7CiAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAvLyBFdmFsdWF0ZSBp
bnRvIHByb3BlcnRpZXMgaW4gc2NvcGUgb2YgdGhlIHNlbGVjdGVkIGNhbGwgZnJhbWUuCiAgICAg
ICAgICAgICAgICAgdmFyIHNjb3BlQ2hhaW4gPSBjYWxsRnJhbWUuc2NvcGVDaGFpbjsKQEAgLTI1
OCwxMSArMjU4LDExIEBAIEluamVjdGVkU2NyaXB0LmV2YWx1YXRlID0gZnVuY3Rpb24oZXhwcmUK
ICAgICByZXR1cm4gSW5qZWN0ZWRTY3JpcHQuX2V2YWx1YXRlQW5kV3JhcChJbmplY3RlZFNjcmlw
dC5fd2luZG93KCkuZXZhbCwgSW5qZWN0ZWRTY3JpcHQuX3dpbmRvdygpLCBleHByZXNzaW9uLCBv
YmplY3RHcm91cCk7CiB9CiAKLUluamVjdGVkU2NyaXB0Ll9ldmFsdWF0ZUFuZFdyYXAgPSBmdW5j
dGlvbihldmFsRnVuY3Rpb24sIG9iamVjdCwgZXhwcmVzc2lvbiwgb2JqZWN0R3JvdXApCitJbmpl
Y3RlZFNjcmlwdC5fZXZhbHVhdGVBbmRXcmFwID0gZnVuY3Rpb24oZXZhbEZ1bmN0aW9uLCBvYmpl
Y3QsIGV4cHJlc3Npb24sIG9iamVjdEdyb3VwLCBkb250VXNlQ29tbWFuZExpbmVBUEkpCiB7CiAg
ICAgdmFyIHJlc3VsdCA9IHt9OwogICAgIHRyeSB7Ci0gICAgICAgIHJlc3VsdC52YWx1ZSA9IElu
amVjdGVkU2NyaXB0LndyYXBPYmplY3QoSW5qZWN0ZWRTY3JpcHQuX2V2YWx1YXRlT24oZXZhbEZ1
bmN0aW9uLCBvYmplY3QsIGV4cHJlc3Npb24pLCBvYmplY3RHcm91cCk7CisgICAgICAgIHJlc3Vs
dC52YWx1ZSA9IEluamVjdGVkU2NyaXB0LndyYXBPYmplY3QoSW5qZWN0ZWRTY3JpcHQuX2V2YWx1
YXRlT24oZXZhbEZ1bmN0aW9uLCBvYmplY3QsIGV4cHJlc3Npb24sIGRvbnRVc2VDb21tYW5kTGlu
ZUFQSSksIG9iamVjdEdyb3VwKTsKIAogICAgICAgICAvLyBIYW5kbGUgZXJyb3IgdGhhdCBtaWdo
dCBoYXZlIGhhcHBlbmVkIHdoaWxlIGRlc2NyaWJpbmcgcmVzdWx0LgogICAgICAgICBpZiAocmVz
dWx0LnZhbHVlLmVycm9yVGV4dCkgewpAQCAtMjc2LDEyICsyNzYsMTQgQEAgSW5qZWN0ZWRTY3Jp
cHQuX2V2YWx1YXRlQW5kV3JhcCA9IGZ1bmN0aQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLUlu
amVjdGVkU2NyaXB0Ll9ldmFsdWF0ZU9uID0gZnVuY3Rpb24oZXZhbEZ1bmN0aW9uLCBvYmplY3Qs
IGV4cHJlc3Npb24pCitJbmplY3RlZFNjcmlwdC5fZXZhbHVhdGVPbiA9IGZ1bmN0aW9uKGV2YWxG
dW5jdGlvbiwgb2JqZWN0LCBleHByZXNzaW9uLCBkb250VXNlQ29tbWFuZExpbmVBUEkpCiB7CiAg
ICAgSW5qZWN0ZWRTY3JpcHQuX2Vuc3VyZUNvbW1hbmRMaW5lQVBJSW5zdGFsbGVkKGV2YWxGdW5j
dGlvbiwgb2JqZWN0KTsKICAgICAvLyBTdXJyb3VuZCB0aGUgZXhwcmVzc2lvbiBpbiB3aXRoIHN0
YXRlbWVudHMgdG8gaW5qZWN0IG91ciBjb21tYW5kIGxpbmUgQVBJIHNvIHRoYXQKICAgICAvLyB0
aGUgd2luZG93IG9iamVjdCBwcm9wZXJ0aWVzIHN0aWxsIHRha2UgbW9yZSBwcmVjZWRlbnQgdGhh
biBvdXIgQVBJIGZ1bmN0aW9ucy4KLSAgICBleHByZXNzaW9uID0gIndpdGggKHdpbmRvdy5jb25z
b2xlLl9pbnNwZWN0b3JDb21tYW5kTGluZUFQSSkgeyB3aXRoICh3aW5kb3cpIHtcbiIgKyBleHBy
ZXNzaW9uICsgIlxufSB9IjsKKyAgICBpZiAoIWRvbnRVc2VDb21tYW5kTGluZUFQSSkKKyAgICAg
ICAgZXhwcmVzc2lvbiA9ICJ3aXRoICh3aW5kb3cuY29uc29sZS5faW5zcGVjdG9yQ29tbWFuZExp
bmVBUEkpIHsgd2l0aCAod2luZG93KSB7XG4iICsgZXhwcmVzc2lvbiArICJcbn0gfSI7CisKICAg
ICB2YXIgdmFsdWUgPSBldmFsRnVuY3Rpb24uY2FsbChvYmplY3QsIGV4cHJlc3Npb24pOwogCiAg
ICAgLy8gV2hlbiBldmFsdWF0aW5nIG9uIGNhbGwgZnJhbWUgZXJyb3IgaXMgbm90IHRocm93biwg
YnV0IHJldHVybmVkIGFzIGEgdmFsdWUuCkBAIC01NzksNyArNTgxLDcgQEAgSW5qZWN0ZWRTY3Jp
cHQuZXZhbHVhdGVJbkNhbGxGcmFtZSA9IGZ1bgogICAgIHZhciBjYWxsRnJhbWUgPSBJbmplY3Rl
ZFNjcmlwdC5fY2FsbEZyYW1lRm9ySWQoY2FsbEZyYW1lSWQpOwogICAgIGlmICghY2FsbEZyYW1l
KQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgcmV0dXJuIEluamVjdGVkU2NyaXB0Ll9ldmFs
dWF0ZUFuZFdyYXAoY2FsbEZyYW1lLmV2YWx1YXRlLCBjYWxsRnJhbWUsIGNvZGUsIG9iamVjdEdy
b3VwKTsKKyAgICByZXR1cm4gSW5qZWN0ZWRTY3JpcHQuX2V2YWx1YXRlQW5kV3JhcChjYWxsRnJh
bWUuZXZhbHVhdGUsIGNhbGxGcmFtZSwgY29kZSwgb2JqZWN0R3JvdXAsIHRydWUpOwogfQogCiBJ
bmplY3RlZFNjcmlwdC5fY2FsbEZyYW1lRm9ySWQgPSBmdW5jdGlvbihpZCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>