#fixed code
                             protected Function<Publisher<?>, Publisher<?>> lookup(String name) {
		Function<Publisher<?>, Publisher<?>> function = this.function;
		if (name != null && this.catalog != null) {
			@SuppressWarnings("unchecked")
			Function<Publisher<?>, Publisher<?>> preferred = this.catalog
					.lookup(Function.class, name);
			if (preferred != null) {
				function = preferred;
			}
		}
		if (function != null) {
			return function;
		}
		throw new IllegalStateException("No function defined with name=" + name);
	}
#vulnerable code 
                             protected Function<Publisher<?>, Publisher<?>> lookup(String name) {
		Function<Publisher<?>, Publisher<?>> function = this.function;
		if (name != null && this.catalog != null) {
			Function<Publisher<?>, Publisher<?>> preferred = this.catalog
					.lookup(Function.class, name);
			if (preferred != null) {
				function = preferred;
			}
		}
		if (function != null) {
			return function;
		}
		throw new IllegalStateException("No function defined");
	} 
                            #location 2 
                            #vulnerability type THREAD_SAFETY_VIOLATION