diff options
author | 2010-04-19 19:15:12 +0000 | |
---|---|---|
committer | 2010-04-19 19:15:12 +0000 | |
commit | d09ab8538d5742a149095445c6880382b6b4408d (patch) | |
tree | 15c865875f9c7d9e4c26cfe4402659e60bbb7b8c /src/google/protobuf/descriptor.cc | |
parent | b3f6a15806011c37623243766900ed6fbd3da84a (diff) |
Allow services with lite runtime when using rpc generator plugin.
Diffstat (limited to 'src/google/protobuf/descriptor.cc')
-rw-r--r-- | src/google/protobuf/descriptor.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/google/protobuf/descriptor.cc b/src/google/protobuf/descriptor.cc index 81c4ac0f..9226dfbc 100644 --- a/src/google/protobuf/descriptor.cc +++ b/src/google/protobuf/descriptor.cc @@ -3720,10 +3720,14 @@ void DescriptorBuilder::ValidateEnumValueOptions( } void DescriptorBuilder::ValidateServiceOptions(ServiceDescriptor* service, const ServiceDescriptorProto& proto) { - if (IsLite(service->file())) { + if (IsLite(service->file()) && + (service->file()->options().cc_generic_services() || + service->file()->options().java_generic_services())) { AddError(service->full_name(), proto, DescriptorPool::ErrorCollector::NAME, - "Files with optimize_for = LITE_RUNTIME cannot define services."); + "Files with optimize_for = LITE_RUNTIME cannot define services " + "unless you set both options cc_generic_services and " + "java_generic_sevices to false."); } VALIDATE_OPTIONS_FROM_ARRAY(service, method, Method); |