Hi Chris and all others who need this info. I build drones of all sort, and I also must repair them when they break. I have crossed paths with this issue and have found, as the top answer suggests, that this is due to a bad transistor/diode on the flight controller. This is a relatively easy fix for those good with smd soldering:
Locate which motor is the one spinning, look on the flight controller or “circuit board” where that particular motor plugs in and locate a three legged diode nearest that motor. Be sure to compare and take notice that each motor has the very same package (dioide) next to it, and with a magnifying glass read the markings on top of the package. This is the part you will need to replace.
If you’ve got old parts just look around and you will be sure to find one you can salvage off of an old board. With a bit of flux and a heat gun, carefully remove the old part.
Once you have the replacement part situated properly on your board, use a soldering iron to touch each leg ever so carefully for a second or two each.
Make sure that each leg has successfully been soldered in place and then use some denatured alcohol to clean your board prior to testing the board out.
If the new part is good, and you’ve done the job correctly, you will see that the motor no longer spins upon connection to the battery.