Change in NativeLinux32>>getGlobalSymbolPointer
I have made a small change in the code because NBExternalAdress does not inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any commit. getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. +^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr Cheers
Sorry. NBExternalAddress new ulongAt: adress 2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
I have made a small change in the code because NBExternalAdress does not inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any commit.
getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. +^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr
Cheers
No, it should be NBExternalAddress value: addr because method should answer an instance of NBExternalAddress not integer. On 12 January 2013 15:25, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
Sorry. NBExternalAddress new ulongAt: adress
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
I have made a small change in the code because NBExternalAdress does not inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any commit.
getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. +^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr
Cheers
-- Best regards, Igor Stasenko.
Ok, but happens that #value: uses #fieldAt: was inherited from NBExternalStructure, which is no longer in the hierarchy. But I understand that it will no longer work with the change I made, any idea? Best Regards, Jesus 2013/1/12 Igor Stasenko <siguctua@gmail.com>
No, it should be NBExternalAddress value: addr because method should answer an instance of NBExternalAddress not integer.
On 12 January 2013 15:25, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
Sorry. NBExternalAddress new ulongAt: adress
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
I have made a small change in the code because NBExternalAdress does not inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any commit.
getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. +^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr
Cheers
-- Best regards, Igor Stasenko.
BTW I also tried returning with ";yourself" but no luck in the test I made. 2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Ok, but happens that #value: uses #fieldAt: was inherited from NBExternalStructure, which is no longer in the hierarchy. But I understand that it will no longer work with the change I made, any idea?
Best Regards,
Jesus
2013/1/12 Igor Stasenko <siguctua@gmail.com>
No, it should be NBExternalAddress value: addr because method should answer an instance of NBExternalAddress not integer.
On 12 January 2013 15:25, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
Sorry. NBExternalAddress new ulongAt: adress
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
I have made a small change in the code because NBExternalAdress does
not
inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any commit.
getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. +^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr
Cheers
-- Best regards, Igor Stasenko.
On 12 January 2013 19:00, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
BTW I also tried returning with ";yourself" but no luck in the test I made.
i dont know what you trying to change there. this code works fine, because if it would not, then nothing else would work at all.
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Ok, but happens that #value: uses #fieldAt: was inherited from NBExternalStructure, which is no longer in the hierarchy. But I understand that it will no longer work with the change I made, any idea?
Best Regards,
Jesus
2013/1/12 Igor Stasenko <siguctua@gmail.com>
No, it should be NBExternalAddress value: addr because method should answer an instance of NBExternalAddress not integer.
On 12 January 2013 15:25, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
Sorry. NBExternalAddress new ulongAt: adress
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
I have made a small change in the code because NBExternalAdress does not inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any commit.
getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. +^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr
Cheers
-- Best regards, Igor Stasenko.
-- Best regards, Igor Stasenko.
Yes Ok, I got it. The question is that the #value: selector is still there, with the old code. Sorry, I should have check the new code directly in the repository and compare it. Thank you. 2013/1/12 Igor Stasenko <siguctua@gmail.com>
On 12 January 2013 19:00, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
BTW I also tried returning with ";yourself" but no luck in the test I made.
i dont know what you trying to change there. this code works fine, because if it would not, then nothing else would work at all.
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Ok, but happens that #value: uses #fieldAt: was inherited from NBExternalStructure, which is no longer in the hierarchy. But I
understand
that it will no longer work with the change I made, any idea?
Best Regards,
Jesus
2013/1/12 Igor Stasenko <siguctua@gmail.com>
No, it should be NBExternalAddress value: addr because method should answer an instance of NBExternalAddress not integer.
On 12 January 2013 15:25, Jesus Nuñez <poissonbreaker@gmail.com>
wrote:
Sorry. NBExternalAddress new ulongAt: adress
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
I have made a small change in the code because NBExternalAdress does not inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any
commit.
getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' ,
symbolName].
+^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr
Cheers
-- Best regards, Igor Stasenko.
-- Best regards, Igor Stasenko.
Sorry what operation should I do over the new versions in Montincello to load them safely?? 2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Yes Ok, I got it. The question is that the #value: selector is still there, with the old code. Sorry, I should have check the new code directly in the repository and compare it.
Thank you.
2013/1/12 Igor Stasenko <siguctua@gmail.com>
On 12 January 2013 19:00, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
BTW I also tried returning with ";yourself" but no luck in the test I made.
i dont know what you trying to change there. this code works fine, because if it would not, then nothing else would work at all.
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Ok, but happens that #value: uses #fieldAt: was inherited from NBExternalStructure, which is no longer in the hierarchy. But I
understand
that it will no longer work with the change I made, any idea?
Best Regards,
Jesus
2013/1/12 Igor Stasenko <siguctua@gmail.com>
No, it should be NBExternalAddress value: addr because method should answer an instance of NBExternalAddress not integer.
On 12 January 2013 15:25, Jesus Nuñez <poissonbreaker@gmail.com>
wrote:
Sorry. NBExternalAddress new ulongAt: adress
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
I have made a small change in the code because NBExternalAdress
does
not inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any commit.
getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. +^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr
Cheers
-- Best regards, Igor Stasenko.
-- Best regards, Igor Stasenko.
Hi Igor, Promise the last question today. What can be causing that issuing:
"NativeBoost forCurrentPlatform callbackCounterAddress. "
returns "nil" ?. In the trunk 1.8 is OK and it returns "@16r282000" in my case. Thanks in advance, Jesus 2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Sorry what operation should I do over the new versions in Montincello to load them safely??
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Yes Ok, I got it. The question is that the #value: selector is still there, with the old code. Sorry, I should have check the new code directly in the repository and compare it.
Thank you.
2013/1/12 Igor Stasenko <siguctua@gmail.com>
On 12 January 2013 19:00, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
BTW I also tried returning with ";yourself" but no luck in the test I made.
i dont know what you trying to change there. this code works fine, because if it would not, then nothing else would work at all.
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Ok, but happens that #value: uses #fieldAt: was inherited from NBExternalStructure, which is no longer in the hierarchy. But I
understand
that it will no longer work with the change I made, any idea?
Best Regards,
Jesus
2013/1/12 Igor Stasenko <siguctua@gmail.com>
No, it should be NBExternalAddress value: addr because method should answer an instance of NBExternalAddress not integer.
On 12 January 2013 15:25, Jesus Nuñez <poissonbreaker@gmail.com>
wrote:
Sorry. NBExternalAddress new ulongAt: adress
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
I have made a small change in the code because NBExternalAdress
does
not inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any commit.
getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. +^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr
Cheers
-- Best regards, Igor Stasenko.
-- Best regards, Igor Stasenko.
OK I fixed it. For some reason the session was opened but and I coudn't issue NativeBoost initilize, I just setted the Current variable to nil and the session was reinitialized at the next call to NativeBoost. Cheers, Jesus 2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Hi Igor,
Promise the last question today.
What can be causing that issuing:
"NativeBoost forCurrentPlatform callbackCounterAddress. "
returns "nil" ?.
In the trunk 1.8 is OK and it returns "@16r282000" in my case.
Thanks in advance,
Jesus
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Sorry what operation should I do over the new versions in Montincello to load them safely??
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Yes Ok, I got it. The question is that the #value: selector is still there, with the old code. Sorry, I should have check the new code directly in the repository and compare it.
Thank you.
2013/1/12 Igor Stasenko <siguctua@gmail.com>
On 12 January 2013 19:00, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
BTW I also tried returning with ";yourself" but no luck in the test I made.
i dont know what you trying to change there. this code works fine, because if it would not, then nothing else would work at all.
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
Ok, but happens that #value: uses #fieldAt: was inherited from NBExternalStructure, which is no longer in the hierarchy. But I
understand
that it will no longer work with the change I made, any idea?
Best Regards,
Jesus
2013/1/12 Igor Stasenko <siguctua@gmail.com>
No, it should be NBExternalAddress value: addr because method should answer an instance of NBExternalAddress not integer.
On 12 January 2013 15:25, Jesus Nuñez <poissonbreaker@gmail.com>
wrote:
Sorry. NBExternalAddress new ulongAt: adress
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
I have made a small change in the code because NBExternalAdress
does
not inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any commit.
getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. +^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr
Cheers
-- Best regards, Igor Stasenko.
-- Best regards, Igor Stasenko.
On 12 January 2013 18:57, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
Ok, but happens that #value: uses #fieldAt: was inherited from NBExternalStructure, which is no longer in the hierarchy. But I understand that it will no longer work with the change I made, any idea?
Yes, because address is not a structure. Initially it was like that to reuse some code pieces, but it not worth it.
Best Regards,
Jesus
2013/1/12 Igor Stasenko <siguctua@gmail.com>
No, it should be NBExternalAddress value: addr because method should answer an instance of NBExternalAddress not integer.
On 12 January 2013 15:25, Jesus Nuñez <poissonbreaker@gmail.com> wrote:
Sorry. NBExternalAddress new ulongAt: adress
2013/1/12 Jesus Nuñez <poissonbreaker@gmail.com>
I have made a small change in the code because NBExternalAdress does not inherit from NBExternalStructure anymore. It is safe?. I mean so far no problems but my understanding is limited so I haven't make any commit.
getGlobalSymbolPointer: symbolName | bytes addr | bytes := ByteArray new: 8. self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. addr := bytes unsignedLongAt: 1 bigEndian: false. addr = 0 ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. +^ NBExternalAddress ulongAt: addr -^ NBExternalAddress value: addr
Cheers
-- Best regards, Igor Stasenko.
-- Best regards, Igor Stasenko.
participants (2)
-
Igor Stasenko -
Jesus Nuñez