Here is the part that makes it bug :

#define SHALLOC_FRAGMENT 32
/*
* If there are at least SHALLOC_FRAGMENT additional bytes of
* memory, divide the chunk into two chunks.
*/
if ((u_int8_t *)rp >=
(u_int8_t *)&elp->links + SHALLOC_FRAGMENT) {
sp = rp;
//--------------- This instruction crashes -------------------------
*--sp = elp->len -
((u_int8_t *)rp - (u_int8_t *)&elp->links);
//------------------------------------------------------------------
elp->len -= *sp + sizeof(size_t);
return (0);
}

So what do we have :

rp = 0xff281794 --> (u_int8_t *)rp = "Cannot access memory at 0xff281794"

sp = 0xff281790 ('--sp' is applied) --> (u_int8_t *)sp = "Cannot access
memory at 0xff281790"

(u_int8_t *)&elp->links = -1 : i think it's ok.

elp->len = 51008

So i guess the problem is first evaluating (u_int8_t *)rp, this pointer
is not correct.


I have already heard that etox is being deprecated and replaced by
evas_text_block, and i totally agree with the fact that it's a really
minor issue ; you have many other priorities before that, and i can live
without it begin corrected (yes i can ! ;-)).

If i have some free time, i'll try to correct it by myself. Don't waste
your precious time ! There are ever-growing TODO lists to deal with, i
guess you're not bored. :-p

Thanx for your answer. And for the hard work.

Carsten Haitzler (The Rasterman) wrote:

>On Tue, 19 Apr 2005 17:03:10 +0200 ORRY Lionel <[EMAIL PROTECTED]> babbled:
>
>  
>
>>Hi everybody  ;
>>
>>just for fun, i tried to compile the EFL in userspace on a SunBlade150 
>>with Solaris 2.8.
>>I got everything compiled and installed ; but i get a segfault on 
>>__edb_shalloc when i try to use an etox-based application, such as 
>>etox_test or ewl_test.
>>    
>>
>
>to be honest - we are working on deprecating etox - and thus edb will become 
>used less and less. it's already almost unused. :) that means it's likely not 
>worth hunting this bug down as 1. we don't run solaris and don't see the bug - 
>and if we don't see it, we can't easily hunt it down, and even if we do.. our 
>"Fixes" wont be useful for long :( if you can get us more gdb info that'd be 
>useful (listings, printings of the variable values etc.) as we need those to 
>have a better idea of whats going wrong (eg is sp NULL? or what?) :)
>
>  
>
>>Here is a backtrace with etox_test :
>>
>>#0  0xfec759f4 in __edb_shalloc (p=0xfe9602e0, len=536, align=4, 
>>retp=0x53de8) at edb_salloc.c:120
>>#1  0xfec32308 in __memp_ropen (edbmp=0x53d98, path=0x0, 
>>cachesize=40960, mode=384, is_private=1, flags=1) at mp_region.c:301
>>#2  0xfec2a834 in memp_open (path=0x0, flags=257, mode=384, 
>>edbenv=0x53d10, retp=0x53c5c) at mp_open.c:71
>>#3  0xfec66f48 in edb_open (fname=0xffbec0a0 
>>"/home/perso/orry/share/etox/colors.db", type=DB_HASH, flags=16384, 
>>mode=436, edbenv=0x0, edbinfo=0xffbec4a8, edbpp=0xffbec4f4) at edb.c:544
>>#4  0xfec486dc in __edb_nedbm_open (file=0x52bb8 
>>"/home/perso/orry/share/etox/colors", oflags=0, mode=436) at edbm.c:210
>>#5  0xfec09fc4 in e_db_open_read (file=0xff3820c8 
>>"/home/perso/orry/share/etox/colors.db") at e_db.c:302
>>#6  0xff380544 in _etox_style_color_init () at etox_style_color.c:116
>>#7  0xff37be8c in etox_style_new (evas=0x28ba8, text=0x53ac8 "The Etox 
>>Test utility consists in a series of test suites designed to exercise 
>>all of the etox functions.", style=0x52348 "shadow") at etox_style.c:45
>>#8  0xff376bb0 in _etox_break_text (et=0x53838, text=0x53ac8 "The Etox 
>>Test utility consists in a series of test suites designed to exercise 
>>all of the etox functions.") at etox.c:1142
>>#9  0xff375308 in etox_set_text (obj=0x53880, text=0x53ac8 "The Etox 
>>Test utility consists in a series of test suites designed to exercise 
>>all of the etox functions.") at etox.c:376
>>#10 0x12064 in setup () at etox_test.c:303
>>#11 0x127b0 in main (argc=1, argv=0xffbece4c) at etox_test.c:425
>>
>>I know i'm not in the optimal conditions for testing, but maybe it will 
>>help to find a new bug.
>>
>>Thanx in advance.
>>
>>Lionel
>>
>>
>>
>>-------------------------------------------------------
>>This SF.Net email is sponsored by: New Crystal Reports XI.
>>Version 11 adds new functionality designed to reduce time involved in
>>creating, integrating, and deploying reporting solutions. Free runtime info,
>>new features, or free trial, at: http://www.businessobjects.com/devxi/728
>>_______________________________________________
>>enlightenment-devel mailing list
>>enlightenment-devel@lists.sourceforge.net
>>https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>>
>>    
>>



-------------------------------------------------------
This SF.Net email is sponsored by: New Crystal Reports XI.
Version 11 adds new functionality designed to reduce time involved in
creating, integrating, and deploying reporting solutions. Free runtime info,
new features, or free trial, at: http://www.businessobjects.com/devxi/728
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to