libftdi_write_data: argument #2 should be const
[libftdi] / src / ftdi.h
index 15067c7..a0ad8b4 100644 (file)
 #include <stdint.h>
 #include <sys/time.h>
 
+/* 'interface' might be defined as a macro on Windows, so we need to
+ * undefine it so as not to break the current libftdi API, because
+ * struct ftdi_context has an 'interface' member
+ * As this can be problematic if you include windows.h after ftdi.h
+ * in your sources, we force windows.h to be included first. */
+#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
+#include <windows.h>
+#if defined(interface)
+#undef interface
+#endif
+#endif
+
 /** FTDI chip type */
 enum ftdi_chip_type
 {
@@ -490,7 +502,7 @@ extern "C"
     int ftdi_read_data_set_chunksize(struct ftdi_context *ftdi, unsigned int chunksize);
     int ftdi_read_data_get_chunksize(struct ftdi_context *ftdi, unsigned int *chunksize);
 
-    int ftdi_write_data(struct ftdi_context *ftdi, unsigned char *buf, int size);
+    int ftdi_write_data(struct ftdi_context *ftdi, const unsigned char *buf, int size);
     int ftdi_write_data_set_chunksize(struct ftdi_context *ftdi, unsigned int chunksize);
     int ftdi_write_data_get_chunksize(struct ftdi_context *ftdi, unsigned int *chunksize);