- value args[4] = { proc_nrv, serialv, positionv, totalv };
+ ehv = Val_int (event_handle);
+
+ bufv = caml_alloc_string (buf_len);
+ memcpy (String_val (bufv), buf, buf_len);
+
+ arrayv = caml_alloc (array_len, 0);
+ for (i = 0; i < array_len; ++i) {
+ v = caml_copy_int64 (array[i]);
+ Store_field (arrayv, i, v);
+ }
+
+ value args[5] = { gv, evv, ehv, bufv, arrayv };