This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 2/4]: Handle SIGINT under Python by raising KeyboardInterrupt


>>>>> "Yit" == Khoo Yit Phang <khooyp@cs.umd.edu> writes:

Yit> It looks like this patch will work. I do need to make a change to my
Yit> Python readline shim to call "while (gdb_do_one_event () >= 0)",
Yit> otherwise the SIGINT will be processed twice: once by Python, and
Yit> another time by GDB under gdb_readline_wrapper (since
Yit> async_request_quit will be processed under gdb_do_one_event then, and
Yit> immediate_quit is set).

Hmm, to me this means something is wrong.

Can you walk me through what happens here?
I still don't understand.

If SIGINT is seen while immediate_quit is set, the effect should be an
immediate longjmp.  In your patch this should be caught by the TRY_CATCH.

Tom


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]