#vulnerable code 
                                public void start() throws InterruptedException {
        thread = new Thread(this, "Fake Adb Server");
        thread.setDaemon(true);
        thread.start();
        synchronized (lockObject) {
            if (!isStarted) {
                lockObject.wait();
            }
        }
    } 
                            #location 4 
                            #vulnerability type THREAD_SAFETY_VIOLATION
#fixed code
                                public void start() throws InterruptedException {
        thread = new Thread(this, "Fake Adb Server");
        thread.setDaemon(true);
        thread.start();
        serverReady();
    }