diff options
-rw-r--r-- | libs/ardour/video_tools_paths.cc | 1 | ||||
-rw-r--r-- | libs/pbd/system_exec.cc | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/libs/ardour/video_tools_paths.cc b/libs/ardour/video_tools_paths.cc index 7107323de9..2021018829 100644 --- a/libs/ardour/video_tools_paths.cc +++ b/libs/ardour/video_tools_paths.cc @@ -29,6 +29,7 @@ #include "pbd/file_utils.h" +#include <glibmm/convert.h> #include <glibmm/miscutils.h> #include <glibmm/fileutils.h> diff --git a/libs/pbd/system_exec.cc b/libs/pbd/system_exec.cc index ed36c507ff..cc5d8d99fe 100644 --- a/libs/pbd/system_exec.cc +++ b/libs/pbd/system_exec.cc @@ -601,7 +601,7 @@ SystemExec::write_to_stdin(const void* data, size_t bytes) c=0; while (c < bytes) { - if (!WriteFile(stdinP[1], data+c, bytes-c, &r, NULL)) { + if (!WriteFile(stdinP[1], &((const char*)data)[c], bytes - c, &r, NULL)) { if (GetLastError() == 0xE8 /*NT_STATUS_INVALID_USER_BUFFER*/) { Sleep(100); continue; @@ -965,7 +965,7 @@ SystemExec::write_to_stdin(const void* data, size_t bytes) c=0; while (c < bytes) { for (;;) { - r=::write(pin[1], data+c, bytes-c); + r = ::write(pin[1], &((const char*)data)[c], bytes - c); if (r < 0 && (errno == EINTR || errno == EAGAIN)) { sleep(1); continue; |