[Vm-dev] 'Run object as method' is flawed in VM
Igor Stasenko
siguctua at gmail.com
Wed Dec 9 05:39:03 UTC 2009
I tried to play with this feature and found that if i install a
smallinteger into method dictionary as a method
and then try to invoke that method, my VM is crashing.
testCrashWithSmallInt
self class methodDict at: #answer10 put: 10.
self should: [self answer10] raise: MessageNotUnderstood.
self class basicRemoveSelector: #answer10.
Wed Dec 09 07:32:43 2009
Exception code: C0000005
Exception addr: 0040C08F
Access violation (read access) at 00000015
EAX:02ECD658 EBX:00000022 ECX:027FBAA8 EDX:00000015
ESI:02ECD570 EDI:00000000 EBP:01250004 ESP:0006FA48
EIP:0040C08F EFL:00010246
FP Control: FFFF027F
FP Status: FFFF0120
FP Tag: FFFFFFFF
VM Version: Squeak 3.11.2 (alpha) from Mar 27 2009
Compiler: gcc 2.95.2 19991024 (release)
Current byte code: 209
Primitive index: 199
Loaded plugins:
SocketPlugin 27 March 2009 (i)
SoundPlugin 6 March 2009 (i)
LargeIntegers v1.5 6 March 2009 (i)
Matrix2x3Plugin 6 March 2009 (i)
FloatArrayPlugin 6 March 2009 (i)
B2DPlugin 6 March 2009 (i)
BitBltPlugin 6 March 2009 (i)
SecurityPlugin 6 March 2009 (i)
FilePlugin 6 March 2009 (i)
MiscPrimitivePlugin 6 March 2009 (i)
Stack dump:
49085392 TestObjectsAsMethods>testCrashWithSmallInt
49085300 TestCase>executeShould:inScopeOf:
--
Best regards,
Igor Stasenko AKA sig.
More information about the Vm-dev
mailing list