hmm .. (Edit: Nevermind) rofl I'll leave this just in case you hit this problem later
Test the value of ResultString before you leave the function it is set in.
As long as that has a value it should work after it has left the function as ResultString wasn't defined as a local variable.
However, I thought Blizzard had changed how Spell data was accessed, so if ResultString or SpellName and SpellDescription come up with nothing that could be the reason.
What I seemed to see happening is that after a period of time, the spell information was cleared from memory so I made a point of storing what I needed for the addon to work. There is an event I use in one of my addons called "SPELL_DATA_LOAD_RESULT" which I use to store any spell information I need to keep after making a call to C_Spell.RequestLoadSpellData(spellID).