#vulnerable code 
                             public List<String> possibleHeaderNames(IContextMenuInvocation invocation) {
		IHttpRequestResponse[] selectedItems = invocation.getSelectedMessages();
		//byte selectedInvocationContext = invocation.getInvocationContext();
		Getter getter = new Getter(burp.callbacks.getHelpers());
		LinkedHashMap<String, String> headers = getter.getHeaderMap(true, selectedItems[0]);

		String[] tokenHeaders = burp.tableModel.getConfigValueByKey("tokenHeaders").split(",");

		List<String> ResultHeaders = new ArrayList<String>();

		if (tokenHeaders!= null) {
			List<String> keywords = Arrays.asList(tokenHeaders);
			Iterator<String> it = headers.keySet().iterator();
			while (it.hasNext()) {
				String item = it.next();
				if (containOneOfKeywords(item,keywords,false)) {
					ResultHeaders.add(item);
				}
			}
		}

		return ResultHeaders;
	} 
                            #location 7 
                            #vulnerability type NULL_DEREFERENCE
#fixed code
                             public List<String> possibleHeaderNames(IContextMenuInvocation invocation) {
		IHttpRequestResponse[] selectedItems = invocation.getSelectedMessages();
		//byte selectedInvocationContext = invocation.getInvocationContext();
		Getter getter = new Getter(burp.callbacks.getHelpers());
		LinkedHashMap<String, String> headers = getter.getHeaderMap(true, selectedItems[0]);

		String tokenHeadersStr = burp.tableModel.getConfigValueByKey("tokenHeaders");

		List<String> ResultHeaders = new ArrayList<String>();
		
		if (tokenHeadersStr!= null && headers != null) {
			String[] tokenHeaders = tokenHeadersStr.split(",");
			List<String> keywords = Arrays.asList(tokenHeaders);
			Iterator<String> it = headers.keySet().iterator();
			while (it.hasNext()) {
				String item = it.next();
				if (containOneOfKeywords(item,keywords,false)) {
					ResultHeaders.add(item);
				}
			}
		}

		return ResultHeaders;
	}