Thanks john.
I will to investigate that. What is strange is that damien on linux  
did not get the problem.
So may be this is coming from the image.
I can systematically get an error usging the latest core 470 and the  
following script http://code.google.com/p/pharo/issues/list?cursor=1295

stef



On Oct 13, 2009, at 7:46 AM, John M McIntosh wrote:

> Well the FilePlugin is built into the VM versus being an external VM
> and it supplies the basic file I/O operations.
> So you won't find a plugin called that unless some-one decided to
> compile up one.
>
> So either the plugin method call fails because it cannot be found, or
> it fails because it explicitly failed on bad data, or
> other reason (an error?)
>
> The failure cases are:
>
> (1) the id object is not a byte array type of object.
> Given
> MultiByteFileStream(StandardFileStream)>>primGetPosition:
>       Receiver: MultiByteFileStream: '/Data/Downloads/pharo1.0-10470-
> BETAdev09.10.2/installScript.st'
>       Arguments and temporary variables:
>               id:     #[153 12 133 142 168 105 19 160 0 0 0 0 18 18 0 0 0 0 0 
> 0 0 0 0
> 0]
>       Receiver's instance variables:
>
> Yes that looks like a byte array object.
>
> (b) the size of id is wrong
>       This is unlikely since the id bytearray hasn't changed size in  
> decades.
>       Let me assume the number of bytes is correct.
>
> (c) the bytes 5-8 have to be non-zero, otherwise we fail
>       Nope, it's 168 105 19 160
>
> (d) bytes 1-3 have to be non-zero AND match some magic value in the VM
>       Well 153 12 133 142 is non zero, but what's the magic value?
>
> MMm I don't think you can get the magic value directly, but at the
> point of failure you could create a new file and examine the 'id'
> value for the StandardFileStream and see if the first 4 bytes match
> the first 4 bytes of this value (153 12 133 142)
> Failure to match would cause a prim failure.
>
> Oh wait I see you can invoke
> self primSizeNoError: fileID
> and if that returns NIL the handle is stale.
>
> See ensureOpen
>
> (e) the ftello() fails because the file doesn't exist, or an I/O error
> happened, or the path is bad. Or some icky file system error.
> Alas we don't feed back or record what the error is, but I think you
> fail on (d)?
>
>
> I'd bet on (d) the MultiByteFileStream instance is some cached value
> from a previous VM usage, try the primSizeNoError: and see what it
> returns when you're inspecting the MultiByteFileStream.
>
>
> On 2009-10-12, at 9:42 PM, Stéphane Ducasse wrote:
>
>> Hi
>>
>> when trying to build the dev image I systematically get a DNU
>>
>> primGetPosition: id
>>      "Get this files current position."
>>
>>      <primitive: 'primitiveFileGetPosition' module: 'FilePlugin'>
>>      self primitiveFailed
>>
>> and I do not have the FilePlugin in the resources VM folder.
>>
>> I checked the web site of john but could not find an explanation.
>>
>> Stef
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [email protected]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
> --
> =
> =
> =
> = 
> = 
> ======================================================================
> John M. McIntosh <[email protected]>   Twitter:
> squeaker68882
> Corporate Smalltalk Consulting Ltd.  http:// 
> www.smalltalkconsulting.com
> =
> =
> =
> = 
> = 
> ======================================================================
>
>
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to