Skip to content

Commit

Permalink
bugfix: length was multiplied by byte length
Browse files Browse the repository at this point in the history
  • Loading branch information
seiya committed Mar 26, 2012
1 parent 2556957 commit 28006e0
Showing 1 changed file with 1 addition and 7 deletions.
8 changes: 1 addition & 7 deletions ext/mpi/mpi.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
struct NARRAY *a;\
GetNArray(rb_obj, a);\
buffer = (void*)(a->ptr);\
if (len==0) len = a->total;\
switch (a->type) {\
case NA_BYTE:\
typ = MPI_BYTE;\
Expand All @@ -24,37 +25,30 @@
case NA_SINT:\
typ = MPI_SHORT;\
buffer = (void*)((char*)buffer + off*4);\
len *= 4;\
break;\
case NA_LINT:\
typ = MPI_LONG;\
buffer = (void*)((char*)buffer + off*8);\
len *= 8;\
break;\
case NA_SFLOAT:\
typ = MPI_FLOAT;\
buffer = (void*)((char*)buffer + off*4);\
len *= 4;\
break;\
case NA_DFLOAT:\
typ = MPI_DOUBLE;\
buffer = (void*)((char*)buffer + off*8);\
len *= 8;\
break;\
case NA_SCOMPLEX:\
typ = MPI_2COMPLEX;\
buffer = (void*)((char*)buffer + off*8);\
len *= 8;\
break;\
case NA_DCOMPLEX:\
typ = MPI_2DOUBLE_COMPLEX;\
buffer = (void*)((char*)buffer + off*16);\
len *= 16;\
break;\
default:\
rb_raise(rb_eArgError, "narray type is invalid");\
}\
if (len==0) len = a->total;\
} else {\
rb_raise(rb_eArgError, "Only String and NArray are supported");\
}\
Expand Down

0 comments on commit 28006e0

Please sign in to comment.