[squeak-dev] Re: FFI and FreeTypePlus problem?

Andreas Raab andreas.raab at gmx.de
Thu Mar 27 22:11:59 UTC 2008


Sebastian Sastre wrote:
> 	I was about to write to you because I suspected of the semaphores.
> Thanks for the workarround I'll try it as soon as I can. A curios fact is it
> wont happen in an ubuntu (32bits).

There are many variations in which the problem will not show (for 
example, when it comes from the cache instead from the net, or if code 
is invoked in the middle which resets the network, or if the previous 
lookup went to the same host, or if there is DNS failure in the middle 
etc). The way to make it happen reliably is like this:

   NetNameResolver addressForName: 'www.squeak.org'.
   Smalltalk recreateSpecialObjectsArray.
   NetNameResolver addressForName: 'ftp.squeak.org'.

Without the fix to recreateSpecialObjectsArray, this should fail, no 
matter where.

Cheers,
   - Andreas


> 
> 	thanks again I will provide feedback of my win32 experience,
> 
> 	cheers
> 
> Sebastian Sastre
> 
> 
>  
> 
>> -----Mensaje original-----
>> De: squeak-dev-bounces at lists.squeakfoundation.org 
>> [mailto:squeak-dev-bounces at lists.squeakfoundation.org] En 
>> nombre de Andreas Raab
>> Enviado el: Jueves, 27 de Marzo de 2008 18:00
>> Para: The general-purpose Squeak developers list
>> Asunto: [squeak-dev] Re: FFI and FreeTypePlus problem?
>>
>> Yeah, I had forgotten about the problem. The issue comes from 
>> a call to 
>> Smalltalk>>recreateSpecialObjectsArray (which is required for 
>> the FFI to 
>> work correctly) and which accidentally nukes the external semaphore 
>> table. The fix is simple: Replace the following line in 
>> SystemDictionary>>recreateSpecialObjectsArray
>>
>> 	newArray at: 39 put: Array new.
>>
>> by
>> 	"Preserve external semaphores when recreating splObjs"
>> 	newArray at: 39 put: (self specialObjectsArray at: 39).
>>
>> Also, saving and restarting the image after loading the FFI is good 
>> temporary workaround for this problem.
>>
>> Cheers,
>>    - Andreas
>>
>> Torsten Bergmann wrote:
>>> I already created a bug report for this, Andreas 
>>> may be able to tell you more:
>>>
>>>    http://bugs.squeak.org/view.php?id=6980
>>>
>>> As a workaround you can can use FFI-Kernel-ar6.mcz
>>> instead of FFI-Kernel-ar-8.mcz.
>>>
>>> Bye
>>> Torsten
>>>
>>>
>>
> 
> 
> 




More information about the Squeak-dev mailing list