* Kevin Wolf (kw...@redhat.com) wrote: > When I restricted the section where the current monitor is set to only > the command handler, I missed that monitor_parse_arguments() can use it > indirectly, too, when evaluating register variables. These cases get > NULL now and crash (easy to reproduce with "x $pc"). > > This series passes the right monitor object down instead of using > monitor_cur(), which fixes the crash.
Why didn't the test-hmp.c find this? It has a 'p $pc + 8' Dave > Kevin Wolf (3): > hmp: Pass monitor to mon_get_cpu() > hmp: Pass monitor to MonitorDef.get_value() > hmp: Pass monitor to mon_get_cpu_env() > > include/monitor/hmp-target.h | 7 ++++--- > monitor/monitor-internal.h | 2 +- > monitor/hmp.c | 2 +- > monitor/misc.c | 24 ++++++++++++------------ > target/i386/monitor.c | 11 ++++++----- > target/m68k/monitor.c | 2 +- > target/nios2/monitor.c | 2 +- > target/ppc/monitor.c | 22 +++++++++++++--------- > target/riscv/monitor.c | 2 +- > target/sh4/monitor.c | 2 +- > target/sparc/monitor.c | 12 +++++++----- > target/xtensa/monitor.c | 2 +- > 12 files changed, 49 insertions(+), 41 deletions(-) > > -- > 2.28.0 > -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK