When programatically adjusting fckeditor profiles (for example when using install profiles, or scripting site updates) it is often necessary to save and load fckeditor profiles through code.
Consider this scenario :
1. update hook 1 updates the fckeditor profile to add something to it, it first loads the profile with fckeditor_load_profile.
2. the same hook makes its changes and saves the profile with fckeditor_save_profile
3. A different hook then wishes to update the profile again. It loads the profile with fckeditor_load_profile BUT because this function maintains a static variable (cache) the origional profile is returned (the same profile returned in step1 and not the updated profile we saved in step2).
Suggested solution - add the ability to "reset" the static variable in the profile_load function, and then call this reset in the profile_save function.