ESource changes not always written to a disk

This is a regression after my commit 294ec486b3bcb82192844fba07a642a789d19e25,
but if you look few lines above, how the save-to-disk works, then it's obvious
that this could easily break. The actual problem here was that if there didn't
change any of loaded extensions, then the source didn't change, due to avoided
test of changes on unloaded extensions, which wasn't a problem before the above
cited commit, because the code relied on false 'changed' notifications.