I have an HTC Desire with CyanogenMod 7 installed. After ignoring the low storage warning for a couple of months, it finally crashed and since then is stuck in the dreaded boot loop. I am able to enter a shell using
adb shell, and I freed some space (~30M) in the internal memory but to no avail.
After reading about how people solved this problem, a promising way seems to be to enter “safe mode“, then find out which app might cause the boot process to fail and remove it.
I found instructions for the HTC Desire to enter safe mode (turn it on, then keep menu button pressed), but this only let me enter the CyanogenMod recovery menu. My explanation for this is that this behavior is a difference from the stock firmware which most similar question apply to.
I did read the boot loop tag wiki, I naturally want to keep my personal data and settings, and factory-resetting the phone is not a desired option.