#vulnerable code 
                              @Override
  public List<Pair<String, String>> getColumns(String schema, String table) throws VerdictDBDbmsException {
    List<Pair<String, String>> columns = new ArrayList<>();
    DbmsQueryResult queryResult = execute(syntax.getColumnsCommand(schema, table));
    JdbcResultSet jdbcResultSet = new JdbcResultSet(queryResult);
    try {
      while (queryResult.next()) {
        String type = jdbcResultSet.getString(syntax.getColumnTypeColumnIndex()+1);
        type = type.toLowerCase();

//        // remove the size of type
//        type = type.replaceAll("\\(.*\\)", "");

        columns.add(
            new ImmutablePair<>(jdbcResultSet.getString(syntax.getColumnNameColumnIndex()+1), type));
      }
    } catch (SQLException e) {
      throw new VerdictDBDbmsException(e);
    } finally {
      jdbcResultSet.close();
    }
    return columns;
  } 
                            #location 5 
                            #vulnerability type NULL_DEREFERENCE
#fixed code
                              @Override
  public List<Pair<String, String>> getColumns(String schema, String table) throws VerdictDBDbmsException {
    List<Pair<String, String>> columns = new ArrayList<>();
    DbmsQueryResult queryResult = execute(syntax.getColumnsCommand(schema, table));
    while (queryResult.next()) {
      String type = (String) queryResult.getValue(syntax.getColumnTypeColumnIndex());
      type = type.toLowerCase();

      columns.add(
          new ImmutablePair<>((String) queryResult.getValue(syntax.getColumnNameColumnIndex()), type));
    }

    return columns;
  }