Odpowiedź:
Niepoprawne jest zdanie B, ponieważ wynika z niego, że wykonawca czynności w czasie, kiedy gotował zupę zapukał do drzwi.
Poprawne byłoby tu zdanie bez imiesłowu,np.
Gdy gotował zupę ktoś zapukał do drzwi.
lub
Gdy gotował zupę usłyszał pukanie do drzwi.