提交 f9b30548 编写于 作者: I iklam

8023683: Enhance class file parsing

Summary: Use the value returned by REALLOC_RESOURCE_ARRAY()
Reviewed-by: coleenp, ahgross
上级 6438baa4
...@@ -2178,8 +2178,8 @@ methodHandle ClassFileParser::parse_method(bool is_interface, ...@@ -2178,8 +2178,8 @@ methodHandle ClassFileParser::parse_method(bool is_interface,
} }
if (lvt_cnt == max_lvt_cnt) { if (lvt_cnt == max_lvt_cnt) {
max_lvt_cnt <<= 1; max_lvt_cnt <<= 1;
REALLOC_RESOURCE_ARRAY(u2, localvariable_table_length, lvt_cnt, max_lvt_cnt); localvariable_table_length = REALLOC_RESOURCE_ARRAY(u2, localvariable_table_length, lvt_cnt, max_lvt_cnt);
REALLOC_RESOURCE_ARRAY(u2*, localvariable_table_start, lvt_cnt, max_lvt_cnt); localvariable_table_start = REALLOC_RESOURCE_ARRAY(u2*, localvariable_table_start, lvt_cnt, max_lvt_cnt);
} }
localvariable_table_start[lvt_cnt] = localvariable_table_start[lvt_cnt] =
parse_localvariable_table(code_length, parse_localvariable_table(code_length,
...@@ -2207,8 +2207,8 @@ methodHandle ClassFileParser::parse_method(bool is_interface, ...@@ -2207,8 +2207,8 @@ methodHandle ClassFileParser::parse_method(bool is_interface,
// Parse local variable type table // Parse local variable type table
if (lvtt_cnt == max_lvtt_cnt) { if (lvtt_cnt == max_lvtt_cnt) {
max_lvtt_cnt <<= 1; max_lvtt_cnt <<= 1;
REALLOC_RESOURCE_ARRAY(u2, localvariable_type_table_length, lvtt_cnt, max_lvtt_cnt); localvariable_type_table_length = REALLOC_RESOURCE_ARRAY(u2, localvariable_type_table_length, lvtt_cnt, max_lvtt_cnt);
REALLOC_RESOURCE_ARRAY(u2*, localvariable_type_table_start, lvtt_cnt, max_lvtt_cnt); localvariable_type_table_start = REALLOC_RESOURCE_ARRAY(u2*, localvariable_type_table_start, lvtt_cnt, max_lvtt_cnt);
} }
localvariable_type_table_start[lvtt_cnt] = localvariable_type_table_start[lvtt_cnt] =
parse_localvariable_table(code_length, parse_localvariable_table(code_length,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册