diff options
Diffstat (limited to 'src/google/protobuf/compiler/plugin.cc')
-rw-r--r-- | src/google/protobuf/compiler/plugin.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/google/protobuf/compiler/plugin.cc b/src/google/protobuf/compiler/plugin.cc index b64a8413..4757652f 100644 --- a/src/google/protobuf/compiler/plugin.cc +++ b/src/google/protobuf/compiler/plugin.cc @@ -36,6 +36,11 @@ #include <set> #include <unistd.h> +#ifdef _WIN32 +#include <io.h> +#include <fcntl.h> +#endif + #include <google/protobuf/stubs/common.h> #include <google/protobuf/compiler/plugin.pb.h> #include <google/protobuf/compiler/code_generator.h> @@ -80,6 +85,11 @@ int PluginMain(int argc, char* argv[], const CodeGenerator* generator) { return 1; } +#ifdef _WIN32 + _setmode(STDIN_FILENO, _O_BINARY); + _setmode(STDOUT_FILENO, _O_BINARY); +#endif + CodeGeneratorRequest request; if (!request.ParseFromFileDescriptor(STDIN_FILENO)) { cerr << argv[0] << ": protoc sent unparseable request to plugin." << endl; |