1 # connect gdb to Valgrind gdbserver:
2 target remote | ./vgdb --wait=60 --vgdb-prefix=./vgdb-prefix-mcclean_after_fork
3 echo vgdb launched process attached\n
4 monitor v.set vgdb-error 999999
6 # put a break in main, and then a watch
7 # also put breaks in code that only the child will execute.
8 # These breaks should not be encountered.
9 break clean_after_fork.c:9
10 break clean_after_fork.c:20
11 break clean_after_fork.c:22
14 # first break encountered.
15 # put a read watchpoint on mem
16 # we expect that the read watchpoint is not triggered in the child
17 # (as we expect it will be cleared at fork).
18 # On FreeBSD directly calling rwatch mem causes an error
19 # calling print first fixes that as a workaround
25 # we should now have encountered the read watchpoint in the parent.
26 # let's kill the parent: