34 #include <google/protobuf/util/delimited_message_util.h>
35 #include <google/protobuf/io/coded_stream.h>
42 int file_descriptor) {
43 io::FileOutputStream
output(file_descriptor);
50 io::OstreamOutputStream zero_copy_output(
output);
67 if (clean_eof != NULL) *clean_eof =
false;
73 if (clean_eof != NULL) *clean_eof =
input->CurrentPosition() ==
start;
79 int position_after_size =
input->CurrentPosition();
86 if (!
input->ConsumedEntireMessage())
return false;
87 if (
input->CurrentPosition() - position_after_size !=
static_cast<int>(
size))
91 input->PopLimit(limit);
106 if (
size > INT_MAX)
return false;
119 if (
output->HadError())
return false;