#vulnerable code 
                             private void updateGC() {
		if (perfDataSupport) {
			ygcCount.update(ygcCountCounter.longValue());
			ygcTimeMills.update(perfData.tickToMills(ygcTimeCounter));
			if (fullGcCountCounter != null) {
				fullgcCount.update(fullGcCountCounter.longValue());
				fullgcTimeMills.update(perfData.tickToMills(fullgcTimeCounter));
			}
		} else if (isJmxStateOk()) {
			try {
				ygcCount.update(jmxClient.getGarbageCollectorManager().getYoungCollector().getCollectionCount());
				ygcTimeMills.update(jmxClient.getGarbageCollectorManager().getYoungCollector().getCollectionTime());

				if (jmxClient.getGarbageCollectorManager().getFullCollector() != null) {
					fullgcCount.update(jmxClient.getGarbageCollectorManager().getFullCollector().getCollectionCount());
					fullgcTimeMills
							.update(jmxClient.getGarbageCollectorManager().getFullCollector().getCollectionTime());
				}
			} catch (Exception e) {
				handleJmxFetchDataError(e);
			}
		}
	} 
                            #location 11 
                            #vulnerability type NULL_DEREFERENCE
#fixed code
                             private void updateGC() {
		if (perfDataSupport) {
			ygcCount.update(ygcCountCounter.longValue());
			ygcTimeMills.update(perfData.tickToMills(ygcTimeCounter));
			if (fullGcCountCounter != null) {
				fullgcCount.update(fullGcCountCounter.longValue());
				fullgcTimeMills.update(perfData.tickToMills(fullgcTimeCounter));
			}
		} else if (isJmxStateOk()) {
			try {
				JmxGarbageCollectorManager gcManager = jmxClient.getGarbageCollectorManager();

				GarbageCollectorMXBean ygcMXBean = gcManager.getYoungCollector();
				ygcStrategy = gcManager.getYgcStrategy();
				ygcCount.update(ygcMXBean.getCollectionCount());
				ygcTimeMills.update(ygcMXBean.getCollectionTime());

				GarbageCollectorMXBean fullgcMXBean = gcManager.getFullCollector();
				if (fullgcMXBean != null) {
					fullgcStrategy = gcManager.getFgcStrategy();
					fullgcCount.update(fullgcMXBean.getCollectionCount());
					fullgcTimeMills.update(fullgcMXBean.getCollectionTime());
				}
			} catch (Exception e) {
				handleJmxFetchDataError(e);
			}
		}
	}