<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Yep, certainly. As often, I'm really glad we have the diffs sent to the list :)</div><div><br></div><span class="Apple-style-span" style="font-family: Helvetica; font-size: 12px; ">- Bert -</span><div><font class="Apple-style-span" face="Helvetica"><br></font><div><div>On 21.03.2012, at 20:53, Nicolas Cellier wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">Any interest to use becomeForward: in such case?<br><br>Nicolas<br><br><div class="gmail_quote">Le 21 mars 2012 20:37,  <span dir="ltr">&lt;<a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a>&gt;</span> a écrit :<br>
<blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto; ">Bert Freudenberg uploaded a new version of Tools to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/Tools-bf.395.mcz" target="_blank">http://source.squeak.org/trunk/Tools-bf.395.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: Tools-bf.395<br>
Author: bf<br>
Time: 21 March 2012, 8:37:16.352 pm<br>
UUID: daf7f77d-d62f-4b59-ab6c-ceeed1058c8a<br>
Ancestors: Tools-bf.394<br>
<br>
Fix receiverInspector having the wrong class in debugger. To reproduce the problem, evaluate "Dictionary new halt values", step into the "values" method, select "self size" and choose "debug it" from the context menu. This would open a debugger whose receiverInspector was still a ContextInspector, when it should have been a DictionaryInspector.<br>

<br>
=============== Diff against Tools-bf.394 ===============<br>
<br>
Item was changed:<br>
 &nbsp;----- Method: Inspector&gt;&gt;inspect: (in category 'initialize-release') -----<br>
 &nbsp;inspect: anObject<br>
 &nbsp; &nbsp; &nbsp; &nbsp;"Initialize the receiver so that it is inspecting anObject. There is no current selection.<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;Normally the receiver will be of the correct class (as defined by anObject inspectorClass),<br>
 &nbsp; &nbsp; &nbsp; &nbsp;because it will have just been created by sedning inspect to anObject. &nbsp; However, the<br>
 &nbsp; &nbsp; &nbsp; &nbsp;debugger uses two embedded inspectors, which are re-targetted on the current receiver<br>
 &nbsp; &nbsp; &nbsp; &nbsp;each time the stack frame changes. &nbsp;The left-hand inspector in the debugger has its<br>
 &nbsp; &nbsp; &nbsp; &nbsp;class changed by the code here. &nbsp;Care should be taken if this method is overridden to<br>
 &nbsp; &nbsp; &nbsp; &nbsp;ensure that the overriding code calls 'super inspect: anObject', or otherwise ensures that<br>
 &nbsp; &nbsp; &nbsp; &nbsp;the class of these embedded inspectors are changed back."<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;| c |<br>
 &nbsp; &nbsp; &nbsp; &nbsp;c := anObject inspectorClass.<br>
+ &nbsp; &nbsp; &nbsp; self class ~= c ifTrue: [<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; self class format = c format<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ifTrue: [self primitiveChangeClassTo: c basicNew]<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ifFalse: [self become: c basicNew]].<br>
- &nbsp; &nbsp; &nbsp; (self class ~= c and: [self class format = c format]) ifTrue: [<br>
- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; self primitiveChangeClassTo: c basicNew].<br>
-<br>
 &nbsp; &nbsp; &nbsp; &nbsp;"Set 'object' before sending the initialize message, because some implementations<br>
 &nbsp; &nbsp; &nbsp; &nbsp;of initialize (e.g., in DictionaryInspector) require 'object' to be non-nil."<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;object := anObject.<br>
 &nbsp; &nbsp; &nbsp; &nbsp;self initialize!<br>
<br>
<br>
</blockquote></div><br>
<br></blockquote></div><div apple-content-edited="true"><span class="Apple-style-span" style="border-collapse: separate; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Lucida Grande'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; -webkit-text-decorations-in-effect: none; text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><br class="Apple-interchange-newline"></span>
</div>
<br></div></body></html>