[squeak-dev] Help needs for the gstreamer on os-x installation process.

John M McIntosh johnmci at smalltalkconsulting.com
Wed Jun 25 16:00:21 UTC 2008


Well it's written assuming it's interfacing to a 32bit system so when  
it does thinks like pass up an address handle or take a number value  
it assumes it's a 32bit value.

primitivegobjectfree: obj
"g_object free it "
	| gObject |

	self primitive: 'primitivegobjectfree' parameters: #(Oop).
	self var: #gObject declareC: 'gpointer  gObject'.
	gObject := self cCoerce: (interpreterProxy positive32BitValueOf: obj)  
to: 'gpointer'.
	self touch: gObject.
	self cCode: 'g_free(gObject)'.

If someone wants to tackle this then like it would become something  
more like.

primitivegobjectfree: obj
"g_object free it "
	| gObject |

	self primitive: 'primitivegobjectfree' parameters: #(Oop).
	self var: #gObject declareC: 'gpointer  gObject'.
	gObject := self cCoerce: (self positive32BitOr64BitValueOf: obj) to:  
'gpointer'.
	self touch: gObject.
	self cCode: 'g_free(gObject)'.


positive32BitOr64BitValueOf: obj
^(self sizeof: long) = 4 ifTrue: [interpreterProxy  
positive32BitValueOf: integerValue] ifFalse: [interpreterProxy  
positive64BitValueOf: obj]

On Jun 25, 2008, at 12:05 AM, José Luis Redrejo wrote:

> John, in 64 bits linux version it does not work, the image totally  
> breaks just trying to get the player. I think it's a vm related  
> problem, as it also breaks when trying to play recorded sounds using  
> the etoys "sounds" tile  (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=487871 
>  ).
>
> Cheers

--
= 
= 
= 
========================================================================
John M. McIntosh <johnmci at smalltalkconsulting.com>
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
= 
= 
= 
========================================================================





More information about the Squeak-dev mailing list