Index: abi/src/other/spell/xp/spell_manager.cpp
===================================================================
RCS file: /cvsroot/abi/src/other/spell/xp/spell_manager.cpp,v
retrieving revision 1.5
diff -c -r1.5 spell_manager.cpp
*** abi/src/other/spell/xp/spell_manager.cpp	2001/06/12 20:09:49	1.5
--- abi/src/other/spell/xp/spell_manager.cpp	2001/06/29 19:07:53
***************
*** 99,108 ****
  {  
  	SpellCheckerClass * checker = 0;
  	
  	// first look up the entry in the hashtable
  	if (m_map.contains (szLang, 0))
  		return (SpellCheckerClass *)m_map.pick (szLang);
! 	
  	// not found, so insert it
  	checker = new SpellCheckerClass ();
  	
--- 99,114 ----
  {  
  	SpellCheckerClass * checker = 0;
  	
+ 	// Don't try to load hashes we know are missing
+ 	if (strstr(m_missingHashs.c_str(), szLang))
+ 		return 0;
+ 
  	// first look up the entry in the hashtable
  	if (m_map.contains (szLang, 0))
+ 	{
  		return (SpellCheckerClass *)m_map.pick (szLang);
! 	}
! 
  	// not found, so insert it
  	checker = new SpellCheckerClass ();
  	
***************
*** 114,120 ****
      }
  	else
      {
! 		m_map.insert (szLang, NULL); // add a null entry for this lang
  		delete checker;
  		return 0;
      }
--- 120,126 ----
      }
  	else
      {
! 		m_missingHashs += szLang;
  		delete checker;
  		return 0;
      }
Index: abi/src/other/spell/xp/spell_manager.h
===================================================================
RCS file: /cvsroot/abi/src/other/spell/xp/spell_manager.h,v
retrieving revision 1.2
diff -c -r1.2 spell_manager.h
*** abi/src/other/spell/xp/spell_manager.h	2001/06/12 20:09:49	1.2
--- abi/src/other/spell/xp/spell_manager.h	2001/06/29 19:07:53
***************
*** 73,78 ****
--- 73,79 ----
  
  private:
  	UT_StringPtrMap m_map;
+ 	UT_String m_missingHashs;
  	SpellChecker *  m_lastDict;
  };