* David Coe <[EMAIL PROTECTED]> [2006-03-09 00:15]: > I have no objection, so go for it. Sorry I'm too busy to do it > myself.
Thanks, I've uploaded with the following patch: diff -u ispell-3.1.20.0/debian/changelog ispell-3.1.20.0/debian/changelog --- ispell-3.1.20.0/debian/changelog +++ ispell-3.1.20.0/debian/changelog @@ -1,3 +1,11 @@ +ispell (3.1.20.0-4.3) unstable; urgency=low + + * NMU with the permission of the maintainer. + * Apply a patch from upstream so words in a personal dictionary don't + get reordered. (Closes: #305750). + + -- Martin Michlmayr <[EMAIL PROTECTED]> Thu, 09 Mar 2006 14:51:10 +0000 + ispell (3.1.20.0-4.2) unstable; urgency=high * Non-Maintainer Upload. only in patch2: unchanged: --- ispell-3.1.20.0.orig/debian/reorder_word_fix.dpatch +++ ispell-3.1.20.0/debian/reorder_word_fix.dpatch @@ -0,0 +1,55 @@ +From: Geoff Kuenning <[EMAIL PROTECTED]> +Subject: Re: ispell reorders words in personal dictionary without good reason +Date: 03 Nov 2005 14:14:15 -0800 + +The correct approach is to build the internal data structure with +variant spellings stored in the same order as they appear in the +personal dictionary. Fortunately, this is easy, though the patch is +to a different file. This one has been tested. (That's what I get +for trying to rush out a fix before a meeting!) + +Index: makedent.c + +RCS file: RCS/makedent.c,v +retrieving revision 1.59 +diff -u -r1.59 makedent.c +--- makedent.c 2005/04/20 23:16:32 1.59 ++++ makedent.c 2005/11/03 22:11:35 +@@ -447,9 +447,10 @@ + if (retval == 0) + { + /* +- ** Couldn't combine the two entries. Add a new variant. For +- ** ease, we'll stick it right behind the header, rather than +- ** at the end of the list. ++ ** Couldn't combine the two entries. Add a new variant. We ++ ** stick it at the end of the variant list because it's ++ ** important to maintain order; this causes the personal ++ ** dictionary to have a stable ordering. + */ + forcevheader (hdrp, oldp, newp); + tdent = (struct dent *) mymalloc (sizeof (struct dent)); +@@ -460,10 +461,13 @@ + return -1; + } + *tdent = *newp; +- tdent->next = hdrp->next; +- hdrp->next = tdent; +- tdent->flagfield |= (hdrp->flagfield & MOREVARIANTS); +- hdrp->flagfield |= MOREVARIANTS; ++ for (oldp = hdrp; ++ oldp->next != NULL && oldp->flagfield & MOREVARIANTS; ++ oldp = oldp->next) ++ ; ++ tdent->next = oldp->next; ++ oldp->next = tdent; ++ oldp->flagfield |= MOREVARIANTS; + combineaffixes (hdrp, newp); + hdrp->flagfield |= (newp->flagfield & KEEP); + if (captype (newp->flagfield) == FOLLOWCASE) + +-- + Geoff Kuenning [EMAIL PROTECTED] http://www.cs.hmc.edu/~geoff/ + +The P in "PDF" is a lie. + -- Martin Michlmayr http://www.cyrius.com/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]