Re: Problems (again) with stop_follower

From: Daniel A. Koepke (dkoepke@circlemud.org)
Date: 10/06/02


On Sat, 5 Oct 2002, Mathew Earle Reuther wrote:

> (gdb) print ch->master->followers
> $3 = (struct follow_type *) 0x11
> (gdb) print ch->master->followers->follower
> Cannot access memory at address 0x11

As indicated, ch->master->followers is pointing to the memory at 0x11,
which isn't memory assigned to your process.  The two most common ways you
get a pointer like this are:

  * accidentally overwriting the memory (buffer overflow, etc.),
  * never initializing the pointer to a sane address to begin with.

You may want to try setting break and/or watchpoints around the code where
you suspect the problem lies.  See questions 4.11 and 4.12 of the FAQ,
gdb's 'help' command, and Google for finding out more about debugging with
gdb.  Knowing your tools will make developing robust code much easier.

-dak

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   | Newbie List:  http://groups.yahoo.com/group/circle-newbies/   |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 06/25/03 PDT