mirror of
				https://github.com/postgres/postgres.git
				synced 2025-11-03 09:13:20 +03:00 
			
		
		
		
	Thank you very much, you catch it :). This bug had a long life, because it
exists if and only if locale of postmaster was a different from C (or ru_RU.KOI8-R). Please, apply patch for current CVS & 7.3.1 Magnus Naeslund(f) wrote: > Ok, I nailed the bug, but i'm not sure what the correct fix is. > Attached tsearch_morph.diff that remedies this problem by avoiding it. > Also there's a debug aid patch if someone would like to know how i > finally found it out :) > > There problem in the lemmatize() function is that GETDICT(...) returned > a value not handled (BYLOCALE). > The value (-1) and later used as an index into the dicts[] array. > After that everything went berserk stack went crazy somehow so trapping > the fault sent me to the wrong place, and every time i read the value it > was positive ;) > > So now i just return the initial word passed to the lemmatize function, > because i don't know what to do with it. Magnus Naeslund
This commit is contained in:
		@@ -173,6 +173,10 @@ lemmatize(char *word, int *len, int type)
 | 
				
			|||||||
			/* word is stopword */
 | 
								/* word is stopword */
 | 
				
			||||||
			return NULL;
 | 
								return NULL;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
							else if (nd == BYLOCALE)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								continue; /* no dict for current locale */
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
		else
 | 
							else
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			dict = &dicts[nd];
 | 
								dict = &dicts[nd];
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user