Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pharo 8 crashes hard on cloning project from Github (Windows - ssh) #4519

Open
maxbareis opened this issue Sep 8, 2019 · 2 comments

Comments

@maxbareis
Copy link

commented Sep 8, 2019

I am not able to reopen #3461 so I created a new issue.
I still get those hard crashes without any stack or dump when trying to clone in a fresh image with ssh (but without credentials), trying to repair the pharo repository with git@github.com:pharo-project/pharo.git. During debug I stumbled over ExternalAddress>>unpackFromArity sending 1 to ExternalAddress(ByteArray)>>pointerAt: . This is then send to unsignedByteAt: and integerAt:size:signed which is not overrode in ExternalAddress and therefore always returns self primitiveFailed :

integerAt: byteOffset size: nBytes signed: aBoolean
	"Primitive. Return an integer of nBytes size from the receiver.
	Note: This primitive will access memory in the outer space if
	invoked from ExternalAddress."
	<primitive: 'primitiveFFIIntegerAt' module:'SqueakFFIPrims'>
	^self primitiveFailed

in Alien this is overwritten but is also sending a message where the return never could be as expected (and probably promised):

integerAt: byteOffset size: size signed: signed

	^ (ExternalAddress fromAddress: self address) integerAt: byteOffset size: size signed: signed

Unfortunately I am too far away from this code to judge the impact of change and which information should be returned by ExternalAddress, so please maybe someone else could have a look at it.

Cheers
Max
Attached StackFuel as zip
Debugger-Stack-ExternalAddress-2019-09-08-133116.zip

@welcome

This comment has been minimized.

Copy link

commented Sep 8, 2019

Thanks for opening your first issue! Please check the CONTRIBUTING documents for some tips about which information should be provided. You can find information of how to do a Pull Request here: https://github.com/pharo-project/pharo/wiki/Contribute-a-fix-to-Pharo

GitHub
Pharo is a dynamic reflective pure object-oriented language supporting live programming inspired by Smalltalk. - pharo-project/pharo
@Ducasse

This comment has been minimized.

Copy link
Member

commented Sep 8, 2019

Thanks a lot for the report

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.