Преглед на файлове

fix null terminated string (#6370)

Joe Bolinger преди 6 години
родител
ревизия
180d3e3287
променени са 1 файла, в които са добавени 2 реда и са изтрити 2 реда
  1. 2 2
      ruby/ext/google/protobuf_c/message.c

+ 2 - 2
ruby/ext/google/protobuf_c/message.c

@@ -192,7 +192,7 @@ static int extract_method_call(VALUE method_name, MessageHeader* self,
     // Find the field name
     // Find the field name
     char wrapper_field_name[name_len - 8];
     char wrapper_field_name[name_len - 8];
     strncpy(wrapper_field_name, name, name_len - 9);
     strncpy(wrapper_field_name, name, name_len - 9);
-    wrapper_field_name[name_len - 7] = '\0';
+    wrapper_field_name[name_len - 9] = '\0';
 
 
     // Check if field exists and is a wrapper type
     // Check if field exists and is a wrapper type
     const upb_oneofdef* test_o_wrapper;
     const upb_oneofdef* test_o_wrapper;
@@ -220,7 +220,7 @@ static int extract_method_call(VALUE method_name, MessageHeader* self,
     // Find enum field name
     // Find enum field name
     char enum_name[name_len - 5];
     char enum_name[name_len - 5];
     strncpy(enum_name, name, name_len - 6);
     strncpy(enum_name, name, name_len - 6);
-    enum_name[name_len - 4] = '\0';
+    enum_name[name_len - 6] = '\0';
 
 
     // Check if enum field exists
     // Check if enum field exists
     const upb_oneofdef* test_o_enum;
     const upb_oneofdef* test_o_enum;