When we find that extensions.sqlite is corrupt, we rebuild the data by detecting addons on disk - which makes them look like foreign installs, so we open up about:newaddon. We should be doing some heuristics to figure out whats a new install and what isn't. We can detect if an addon was already enabled (and therefore installed) before the DB corruption by looking at extensions.ini and extensions.bootstrappedAddons. I thought we were doing this already - maybe a regression?
I think my patch in bug 671894 takes care of this, I have just failed to find time to finish the last bits of it :(
Indeed, handled by bug 671894 - that's where I remembered it from!
Fixed via bug 671894.