I think it is. What you're saying about the IDE is true, but I've just simplified the code here to show the principle. In my real B4A app/B4J program, the object gets initialised 'somewhere', so the IDE considers it ok. At run time, the Wait For the event never finishes as the event isn't raised if the initialisation is missed.