gdb
[Top][All Lists]
Advanced

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

curious freeze when using watches


From: ant
Subject: curious freeze when using watches
Date: Thu, 6 Nov 2014 12:47:10 -0500
User-agent: slrn/1.0.2 (Linux)

  if i include this bit (minus the -----'s) in my script to gdb:

-----
watch -l dbase[8].roguenam
commands
silent
printf "08 %-32s 08 '%s'\n", dbase[8].roguenam, dbase[8].fakename
bt
cont
end
-----

in my script to gdb the program will stop at some point
and never go further,

  if i change the watch to look at dbase[8].roguenam for
the change (not using the -l) it does not make any
difference the program still stops and never restarts.

  turning on or turning off hardware watchpoints makes
no difference.

  otherwise my script runs just fine (i'll include the whole
thing below for reference):

  i've tried this using versions: (on Debian testing/sid/experimental)

(currently:
gdb (Debian 7.8-1) 7.8
This GDB was configured as "i586-linux-gnu".)

and before:

7.7.1+dfsg-3

  any hints/help appreciated.  :)


-----

set confirm off
set pagination off
set logging file gdbrogomatic.txt
set logging overwrite on
set logging on
set breakpoint pending on
set listsize 10
set can-use-hw-watchpoints 0
define my_prt_dbase
  set $ic = 0
  printf "\n"
  while ($ic < datalen)
    printf "%02d %-32s %02d '%s'\n", $ic, dbase[$ic].roguenam, $ic, 
dbase[$ic].fakename
    set $ic = $ic + 1
  end
  printf "\n"
end
break mess.c:162
commands
silent
printf "parsemsg: %s\n", mess
cont
end
break mess.c:880
commands
silent
printf "infer: %s\n", objname
bt
cont
end
break io.c:895
commands
silent
printf "say: %s\n", buf
cont
end
break command.c:87 if ((cmd[0] == 'c') || (cmd[0] == 'q') || (cmd[0] == 'r') || 
(cmd[0] == 'z'))
commands
printf "cmd: %s\n", cmd
bt
cont
end
break database.c:81
commands
printf "useobj: oldname %s\n", oldname
bt
cont
end
break database.c:109
commands
printf "infername: i %02d  oldname %s  name %s\n", i, oldname, name
if streq (oldname, "enchant armor")
  printf "oldname ENCHANT\n"
end
if streq (name, "enchant armor")
  printf "NAME ENCHANT\n"
end
bt
cont
end
break database.c:122
commands
printf "used: oldname %s\n", oldname
bt
cont
end
break database.c:138
commands
printf "know: name %s\n", name
bt
cont
end
break database.c:154
commands
printf "realname: oldname %s  realname %s\n", oldname, dbase[i].roguenam
bt
cont
end
watch datalen
commands
silent
printf "  datalen is %d\n", datalen
my_prt_dbase
bt
cont
end
watch -l dbase[8].roguenam
commands
silent
printf "08 %-32s 08 '%s'\n", dbase[8].roguenam, dbase[8].fakename
bt
cont
end
watch justreadid
commands
silent
printf "  justreadid is %d\n", justreadid
bt
cont
end
watch identifying
commands
silent
printf "  identifying is %d\n", identifying
bt
cont
end
cont

-----

  ant




reply via email to

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