summaryrefslogtreecommitdiffstats
path: root/graphics/wings/files/patch-plugins__src-accel-perlin__noise__drv.c
blob: 3260401de900cda24f9790882f43c8bc6feada94 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
--- plugins_src/accel/perlin_noise_drv.c.orig
+++ plugins_src/accel/perlin_noise_drv.c
@@ -22,6 +22,11 @@
 #include <math.h>
 #include <string.h>
 
+#if ERL_DRV_EXTENDED_MAJOR_VERSION < 2
+typedef int ErlDrvSizeT;
+typedef int ErlDrvSSizeT;
+#endif
+
 #define PNOISE3 3
 #define SNOISE1 4
 #define SNOISE2 5
@@ -57,9 +62,9 @@
  */
 static ErlDrvData perlin_noise_start(ErlDrvPort port, char *buff);
 static void perlin_noise_stop(ErlDrvData handle);
-static int control(ErlDrvData handle, unsigned int command, 
-                   char* buff, int count, 
-                   char** res, int res_size);
+static ErlDrvSSizeT control(ErlDrvData handle, unsigned int command, 
+                   char* buff, ErlDrvSizeT count, 
+                   char** res, ErlDrvSizeT res_size);
 
 /*
  * Internal routines
@@ -82,7 +87,18 @@
    NULL,                  /* void * that is not used (BC) */
    control,               /* F_PTR control, port_control callback */
    NULL,                  /* F_PTR timeout, driver_set_timer callback */
-   NULL                   /* F_PTR outputv, reserved */
+   NULL,                  /* F_PTR outputv, reserved */
+   NULL,
+   NULL,
+   NULL,
+   NULL,
+   ERL_DRV_EXTENDED_MARKER,
+   ERL_DRV_EXTENDED_MAJOR_VERSION,
+   ERL_DRV_EXTENDED_MINOR_VERSION,
+   0,
+   NULL,
+   NULL,
+   NULL
 };
 
 /*
@@ -114,9 +130,9 @@
    
 }
 
-static int control(ErlDrvData handle, unsigned int command,
-		   char* buff, int count, 
-		   char** res, int res_size)
+static ErlDrvSSizeT control(ErlDrvData handle, unsigned int command,
+		   char* buff, ErlDrvSizeT count, 
+		   char** res, ErlDrvSizeT res_size)
 {
    ErlDrvBinary* bin;
 
OpenPOWER on IntegriCloud