Hi,

[EMAIL PROTECTED], le Sun 07 Jan 2007 21:41:46 -0700, a écrit :
> > /bin/sh: line 1: 31492 Bus error               LD_LIBRARY_PATH=../bin: 
> > NEKOPATH=../boot:../bin ../bin/neko nekoml -v neko/Main.nml nekoml/Main.nml

The attached patch fixes the build both on sparc and ia64 architectures,
i.e. works fine with align-requiriging, big-endian and 64bits
architectures, so should be fine for others.

Samuel
--- neko-1.5.2-orig/vm/main.c   2006-11-22 16:07:11.000000000 +0100
+++ neko-1.5.2/vm/main.c        2007-01-08 22:31:27.000000000 +0100
@@ -147,10 +147,11 @@
 #endif
 
 static int execute( neko_vm *vm, char **argv, int argc ) {
-       unsigned int data_pos = *(unsigned int*)(data+10);
+       unsigned int data_pos;
        char *exe = executable_path();
        value mload;
        int ret;
+       memcpy(&data_pos, (data+10), sizeof(data_pos));
        if( neko_is_big_endian() )
                data_pos = (data_pos >> 24) | ((data_pos >> 8) & 0xFF00) | 
((data_pos << 8) & 0xFF0000) | (data_pos << 24);
        if( data_pos == 0 ) {

Reply via email to