Images

Damien Cassou damien.cassou at laposte.net
Fri Sep 3 15:37:54 UTC 2004


Hi,


I've tried this code :

(HTTPSocket httpShowGif:
	'http://www.google.fr/intl/fr_fr/images/logo.gif')
	display

It displays the logo but a bug too :

VM: unix - a SmalltalkImage
Image: Squeak3.7gamma [latest update: #5985]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir /home/quetzalcoatl/squeak-3.7
Trusted Dir /home/quetzalcoatl/squeak-3.7/secure
Untrusted Dir /home/quetzalcoatl/squeak-3.7/untrusted

HTTPSocket class(Object)>>doesNotUnderstand: #display
	Receiver: HTTPSocket
	Arguments and temporary variables:
		aMessage: 	display
	Receiver's instance variables:
		superclass: 	OldSimpleClientSocket
		methodDict: 	a MethodDictionary(#contentType->a CompiledMethod (492)
#contentTyp...etc...
		format: 	150
		instanceVariables: 	#('headerTokens' 'headers' 'responseCode')
		organization: 	('as yet unclassified' contentType contentType:
contentsLength: g...etc...
		subclasses: 	nil
		name: 	#HTTPSocket
		classPool: 	a Dictionary(#HTTPBlabEmail->'' #HTTPPort->80
#HTTPProxyCredentials-...etc...
		sharedPools: 	nil
		environment: 	a SystemDictionary(lots of globals)
		category: 	nil

UndefinedObject>>DoIt
	Receiver: nil
	Arguments and temporary variables:

	Receiver's instance variables:
nil

Compiler>>evaluate:in:to:notifying:ifFail:logged:
	Receiver: a Compiler
	Arguments and temporary variables:
		textOrStream: 	a ReadWriteStream 'Transcript show: ''Début du test'' ;
cr.
Trans...etc...
		aContext: 	nil
		receiver: 	nil
		aRequestor: 	a TextMorphEditor
		failBlock: 	[] in TextMorphEditor(ParagraphEditor)>>evaluateSelection
{[FakeClas...etc...
		logFlag: 	true
		methodNode: 	DoIt
	^ (HTTPSocket httpShowGif: 'http://www.google.fr/intl/fr_fr/i...etc...
		method: 	a CompiledMethod (3854)
		value: 	nil
		selector: 	#DoIt
	Receiver's instance variables:
		sourceStream: 	a ReadWriteStream 'Transcript show: ''Début du test'' ;
cr.
Trans...etc...
		requestor: 	a TextMorphEditor
		class: 	UndefinedObject
		context: 	nil
		parserClass: 	Parser
		cacheDoItNode: 	true

[] in TextMorphEditor(ParagraphEditor)>>evaluateSelection {[rcvr class
evaluatorClass new   evaluate: self selectionAsStream   in: ctxt...]}
	Arguments and temporary variables:
		result: 	nil
		rcvr: 	nil
		ctxt: 	nil
		ex: 	nil


--- The full stack ---
HTTPSocket class(Object)>>doesNotUnderstand: #display
UndefinedObject>>DoIt
Compiler>>evaluate:in:to:notifying:ifFail:logged:
[] in TextMorphEditor(ParagraphEditor)>>evaluateSelection {[rcvr class
evaluatorClass new   evaluate: self selectionAsStream   in: ctxt...]}
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BlockContext>>on:do:
TextMorphEditor(ParagraphEditor)>>evaluateSelection
TextMorphEditor(ParagraphEditor)>>doIt
[] in TextMorphEditor(ParagraphEditor)>>doIt: {[self doIt]}
TextMorphEditor(Controller)>>terminateAndInitializeAround:
TextMorphEditor(ParagraphEditor)>>doIt:
TextMorphEditor(ParagraphEditor)>>dispatchOnCharacter:with:
TextMorphEditor>>dispatchOnCharacter:with:
TextMorphEditor(ParagraphEditor)>>readKeyboard
TextMorphEditor>>readKeyboard
[] in TextMorphForEditView(TextMorph)>>keyStroke: {[editor
readKeyboard]}
TextMorphForEditView(TextMorph)>>handleInteraction:fromEvent:
TextMorphForEditView>>handleInteraction:fromEvent:
TextMorphForEditView(TextMorph)>>keyStroke:
TextMorphForEditView>>keyStroke:
TextMorphForEditView(TextMorph)>>handleKeystroke:
KeyboardEvent>>sentTo:
TextMorphForEditView(Morph)>>handleEvent:
TextMorphForEditView(Morph)>>handleFocusEvent:
[] in HandMorph>>sendFocusEvent:to:clear: {[ActiveHand := self.
ActiveEvent := anEvent.  result := focusHolder     han...]}
[] in PasteUpMorph>>becomeActiveDuring: {[aBlock value]}
BlockContext>>on:do:
PasteUpMorph>>becomeActiveDuring:
HandMorph>>sendFocusEvent:to:clear:
HandMorph>>sendEvent:focus:clear:
HandMorph>>sendKeyboardEvent:
HandMorph>>handleEvent:
HandMorph>>processEvents
[] in WorldState>>doOneCycleNowFor: {[:h |  ActiveHand := h.  h
processEvents.  capturingGesture := capturingGest...]}
Array(SequenceableCollection)>>do:
WorldState>>handsDo:
WorldState>>doOneCycleNowFor:
WorldState>>doOneCycleFor:
PasteUpMorph>>doOneCycle
[] in Project class>>spawnNewProcess {[[World doOneCycle.  Processor
yield.  false] whileFalse.  nil]}
[] in BlockContext>>newProcess {[self value.  Processor
terminateActive]}




More information about the Squeak-dev mailing list