Bug report
Bug description:
Original gist: https://gist.github.com/devdanzin/ed7691a99c26ede561a549ab1dba00b2
Summary
In
Modules/_lsprof.c(lines 821-823), whensys.monitoring.use_tool_id()fails,PyErr_Formatunconditionally replaces the real exception with a generic ValueError.Fix
Remove the
PyErr_Formatcall and let the original exception propagate.Reproducer
import cProfile p1 = cProfile.Profile() p1.enable() p2 = cProfile.Profile() try: p2.enable() # ValueError: "Another profiling tool is already active" except ValueError as e: print(f"Generic message masks real error: {e}") finally: p1.disable()
CPython versions tested on:
CPython main branch
Operating systems tested on:
No response