Smalltalk 指针检测-检查对象(实例)并执行;指针检测开启:自我;导致Pharo出现系统错误?

Smalltalk 指针检测-检查对象(实例)并执行;指针检测开启:自我;导致Pharo出现系统错误?,smalltalk,pharo,Smalltalk,Pharo,指针检测-检查对象(实例)并执行“PointerDetective openOn:self.”会导致Pharo中出现系统错误 该对象是一个WhateverRoot实例(WAComponent的子类),具有“canBeRoot^true” 我做错什么了吗 PS.我的“鹰眼”在错误的第9行发现了一个打字错误。“‘原始错误:’,标题关联。”。也许,只是也许 法罗3号: 设法在更接近问题的地方找到了零。问题似乎只发生在PointerDetect的最新提交(10)时。在那之前的那个(9)是广告宣传的。此“

指针检测-检查对象(实例)并执行“PointerDetective openOn:self.”会导致Pharo中出现系统错误

该对象是一个WhateverRoot实例(WAComponent的子类),具有“canBeRoot^true”

我做错什么了吗

PS.我的“鹰眼”在错误的第9行发现了一个打字错误。“‘原始错误:’,标题关联。”。也许,只是也许

法罗3号: 设法在更接近问题的地方找到了零。问题似乎只发生在PointerDetect的最新提交(10)时。在那之前的那个(9)是广告宣传的。此“弱自我”错误仅在最新提交时发生

Squeak 4.5和Pharo 4(前沿):还在Squeak 4.5 All-In-One和Pharo 4的最新版本上尝试了最新提交(10),它们都会弹出调试器而不是白色崩溃

易于复制,即使页面上的示例也会使其崩溃

复制的步骤:

  • 找法罗3号

  • 蒙蒂塞洛酒店

  • 添加存储库

  • 打开存储库

  • 选择最新提交(10)

  • 装载

  • 开放式工作区

  • 粘贴到示例中并执行->白屏按esc键删除

    testObject := 'END5'.
    ref1 := { testObject. nil }.
    ref2 := { ref1 }.
    ref3 := PDTestResource new heldObject: ref2. 
    ref1 at: 2 put: ref3.  "note the reference loop this creates"
    PointerDetective openOn: testObject.
    

    您好,我认为向Pharo邮件列表发送电子邮件更有意义,因为这并不是一个常见问题。您可以在这里找到地址:转发到pharo dev list.Super。我在pharo用户上发布了它。@Unmercea记得在问题解决后(例如,在pharo社区的帮助下)在这里回答您自己的问题。在SO有更多的Smalltalk是一件好事。@LeandroCaniglia我会的。书签。