jaxp/src/com/sun/org/apache/bcel/internal/generic/MethodGen.java
changeset 15346 3f6fd93fec9a
parent 12457 c348e06f0e82
equal deleted inserted replaced
14968:a41ada2ed4ef 15346:3f6fd93fec9a
   256               }
   256               }
   257 
   257 
   258               addLocalVariable(l.getName(), Type.getType(l.getSignature()),
   258               addLocalVariable(l.getName(), Type.getType(l.getSignature()),
   259                                l.getIndex(), start, end);
   259                                l.getIndex(), start, end);
   260             }
   260             }
       
   261           } else if (a instanceof LocalVariableTypeTable) {
       
   262              LocalVariable[] lv = ((LocalVariableTypeTable) a).getLocalVariableTypeTable();
       
   263              removeLocalVariables();
       
   264              for (int k = 0; k < lv.length; k++) {
       
   265                  LocalVariable l = lv[k];
       
   266                  InstructionHandle start = il.findHandle(l.getStartPC());
       
   267                  InstructionHandle end = il.findHandle(l.getStartPC() + l.getLength());
       
   268                  // Repair malformed handles
       
   269                  if (null == start) {
       
   270                      start = il.getStart();
       
   271                  }
       
   272                  if (null == end) {
       
   273                      end = il.getEnd();
       
   274                  }
       
   275                  addLocalVariable(l.getName(), Type.getType(l.getSignature()), l
       
   276                          .getIndex(), start, end);
       
   277               }
   261           } else
   278           } else
   262             addCodeAttribute(a);
   279             addCodeAttribute(a);
   263         }
   280         }
   264       } else if(a instanceof ExceptionTable) {
   281       } else if(a instanceof ExceptionTable) {
   265         String[] names = ((ExceptionTable)a).getExceptionNames();
   282         String[] names = ((ExceptionTable)a).getExceptionNames();