aspell-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [aspell-devel] Core dump, bus error, byte alignment, ObjStack


From: James Lee
Subject: Re: [aspell-devel] Core dump, bus error, byte alignment, ObjStack
Date: Fri, 21 May 2004 15:25:37 GMT

On 21/05/04, 14:38:56, Kevin Atkinson <address@hidden> wrote regarding Re: 
[aspell-devel] Core dump, bus error, byte alignment, ObjStack:

> > A simple workaround which so far has allowed aspell to run is to modify
> > ObjStack alloc(size_t size) to align to a 4 byte boundary:

> But memory ineffect (in the case of very short strings).  Also won't work
> on 64 bit platforms.  Best to modify the above statement to:
>   WordData * b = (WordData *)buf.alloc(total_size, sizeof(void *));


Of course. The quick workaround is not the solution. The appropriate 
alloc call (with or without the alignment) is required throughout the 
code. Perhaps there aren't any more, seems to be working with just:

--- modules/speller/default/readonly_ws.cpp.orig        2004-05-12 
07:03:28.000000000 +0100
+++ modules/speller/default/readonly_ws.cpp     2004-05-21 15:44:32.630024000 
+0100
@@ -850,7 +850,7 @@
             return make_err(invalid_word, MsgConv(lang)(w),
                             _("The total word length, with soundslike 
data, is larger than 240 characters."));
 
-          WordData * b = (WordData *)buf.alloc(total_size);
+          WordData * b = (WordData *)buf.alloc(total_size, sizeof(void 
*));
           *prev = b;
           b->next = 0;
           prev = &b->next;






reply via email to

[Prev in Thread] Current Thread [Next in Thread]