Because it's not supposed to just work, right?

Not like anyone would call this function twice in the same place...

   /// Return a temporary buffer we can use to return data.
   char* getReturnBuffer(U32 size)
      AssertFatal(Con::isMainThread(), "Manipulating return buffer from a secondary thread!");	
      return mArgBuffer;	

Oh God there's more.
Share the horrifying with this link.