This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Memory access error in XWin -multiwindow


Hi Biju,

> I am facing an issue of Memory access error in XWin -multiwindow mode
> see http://www.cygwin.com/ml/cygwin-xfree/2003-06/msg00294.html
>
> So Ralf pointed me to http://cygwin.com/ml/cygwin-xfree/2003-06/msg00162.html
>
> After seeing that patch, I have just gone thru XWin Source and found,
> at lot of place we call memory alloc and not testing the return value.
> I am attaching the list & extracts from programs
> I dont know all of those will make any issue.
>
> I did not checked whether it is properly "free()"-ed

You can try the mem_watch library on
http://sourceforge.net/project/showfiles.php?group_id=27249.
It allows checking of memory related calls on cygwin with minimal effort.

After installing this package, relink the Xserver with the following line:

$ make LDFLAGS="-Wl,--whole-archive -Wl,-lmemwatch -Wl,--no-whole-archive"

Then start Xwin and you can see all memory related calls and there calling
address.

See an example output below (you can get more informations through the INSTALL
file of the memwatch release).

$ ./test
MemWatch hooks installed (set MEMWATCH=1 env var to enable debugging)

Memory Checker report
=====================
number of calls:
        malloc       : 3
        calloc       : 1
        realloc      : 0
        free         : 1

        used memory  : 350

unfree'd memory areas

  address     size    calladdr

 0a040488      300    00401afc
 0a040448       20    00401ac7
 0a040460       30    00401ad9
==============================
               350

compile this application with debugging symbols and try
addr2line to get the source line of the relating call

        addr2line -e ./test.exe <calladdr>

May be that helps.

Cheers
Ralf


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]