From f351f277803a2ed8313735ece6f8d7f129c5f2c6 Mon Sep 17 00:00:00 2001 From: patryk4815 Date: Mon, 16 Dec 2024 03:17:43 +0100 Subject: [PATCH] Fix `entry` command (#2627) --- pwndbg/commands/start.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pwndbg/commands/start.py b/pwndbg/commands/start.py index 63c03b602..b6fd6d0e0 100644 --- a/pwndbg/commands/start.py +++ b/pwndbg/commands/start.py @@ -12,6 +12,7 @@ from shlex import quote import pwndbg import pwndbg.aglib.elf import pwndbg.aglib.proc +import pwndbg.aglib.regs import pwndbg.color.message as M import pwndbg.commands import pwndbg.dbg @@ -28,6 +29,11 @@ def breakpoint_at_entry(): print(M.error("No entry address found for the binary.")) return + if int(pwndbg.aglib.regs.pc) == addr: + # Skip setting the breakpoint because we are already at the entry point. + # This occurs when execution started with `starti` or `run -s`. + return + proc = pwndbg.dbg.selected_inferior() bp = proc.break_at(BreakpointLocation(addr), internal=True)