From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12337 invoked by alias); 30 Jul 2011 14:12:51 -0000 Received: (qmail 12321 invoked by uid 22791); 30 Jul 2011 14:12:50 -0000 X-SWARE-Spam-Status: No, hits=-2.3 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,TW_CP,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org Received: from mail-gy0-f169.google.com (HELO mail-gy0-f169.google.com) (209.85.160.169) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 30 Jul 2011 14:12:32 +0000 Received: by gyg13 with SMTP id 13so3534473gyg.0 for ; Sat, 30 Jul 2011 07:12:31 -0700 (PDT) MIME-Version: 1.0 Received: by 10.236.136.232 with SMTP id w68mr592353yhi.255.1312035151312; Sat, 30 Jul 2011 07:12:31 -0700 (PDT) Received: by 10.236.109.131 with HTTP; Sat, 30 Jul 2011 07:12:31 -0700 (PDT) Date: Sat, 30 Jul 2011 22:20:00 -0000 Message-ID: Subject: [patch] python prompt additions at first prompt. From: Matt Rice To: gdb-patches@sourceware.org Content-Type: multipart/mixed; boundary=20cf303e9e7a20781c04a949fdf9 X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2011-07/txt/msg00825.txt.bz2 --20cf303e9e7a20781c04a949fdf9 Content-Type: text/plain; charset=ISO-8859-1 Content-length: 1653 little bug with the new python prompt stuff, the prompt_hook doesn't take effect until the second prompt. I couldn't for the life of me figure out how to do a testcase for this... using gdb.mi/mi-async.exp as an example of using -ex it still didn't want to work, there was also the need to match the very first prompt. and command line python stuff seems to go awry of how skip_python_tests works. sorry. before: gdb/gdb -quiet -ex 'set prompt (foo) ' -ex 'python def prompt(x): return "(bar) "' -ex 'python gdb.prompt_hook = prompt' (foo) (bar) quit ~/git/gdb/gdb/gdb -quiet -ex 'python def prompt(x): return "(bar) "' -ex 'python gdb.prompt_hook = prompt' (gdb) (bar) quit after: gdb/gdb -quiet -ex 'set prompt (foo) ' -ex 'python def prompt(x): return "(bar) "' -ex 'python gdb.prompt_hook = prompt' (bar) (bar) quit gdb/gdb -quiet -ex 'python def prompt(x): return "(bar) "' -ex 'python gdb.prompt_hook = prompt' (bar) (bar) quit ran the above things with --enable-tui --disable-tui plus gdb --interpreter=tui and ran the testsuite with --enable-tui and --disable-tui. didn't see anything but what looked like tests that fail randomly. I think it's ok anyways, the 'if (async_command_editing_p)' case in display_gdb_prompt seems to cover it, with the addition of rl_callback_handler_remove() which afaict seemed ok to call before a handler is installed otherwise, there is a workaround calling gdb.execute("set prompt " + prompt("foo")) Thanks. 2011-07-30 Matt Rice * event-top.c (cli_command_loop): Remove code redundant to display_gdb_prompt. * tui/tui-interp.c (tui_command_loop): Ditto. --20cf303e9e7a20781c04a949fdf9 Content-Type: text/x-patch; charset=US-ASCII; name="foo.diff" Content-Disposition: attachment; filename="foo.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gqqni2v20 Content-length: 3189 ZGlmZiAtLWdpdCBhL2dkYi9ldmVudC10b3AuYyBiL2dkYi9ldmVudC10b3Au YwppbmRleCAzNzg4MjcyOC4uZmIwNDc4ZiAxMDA2NDQKLS0tIGEvZ2RiL2V2 ZW50LXRvcC5jCisrKyBiL2dkYi9ldmVudC10b3AuYwpAQCAtMTg1LDI3ICsx ODUsNyBAQCBybF9jYWxsYmFja19yZWFkX2NoYXJfd3JhcHBlciAoZ2RiX2Ns aWVudF9kYXRhIGNsaWVudF9kYXRhKQogdm9pZAogY2xpX2NvbW1hbmRfbG9v cCAodm9pZCkKIHsKLSAgLyogSWYgd2UgYXJlIHVzaW5nIHJlYWRsaW5lLCBz ZXQgdGhpbmdzIHVwIGFuZCBkaXNwbGF5IHRoZSBmaXJzdAotICAgICBwcm9t cHQsIG90aGVyd2lzZSBqdXN0IHByaW50IHRoZSBwcm9tcHQuICAqLwotICBp ZiAoYXN5bmNfY29tbWFuZF9lZGl0aW5nX3ApCi0gICAgewotICAgICAgaW50 IGxlbmd0aDsKLSAgICAgIGNoYXIgKmFfcHJvbXB0OwotICAgICAgY2hhciAq Z2RiX3Byb21wdCA9IGdldF9wcm9tcHQgKDApOwotCi0gICAgICAvKiBUZWxs IHJlYWRsaW5lIHdoYXQgdGhlIHByb21wdCB0byBkaXNwbGF5IGlzIGFuZCB3 aGF0IGZ1bmN0aW9uCi0gICAgICAgICBpdCB3aWxsIG5lZWQgdG8gY2FsbCBh ZnRlciBhIHdob2xlIGxpbmUgaXMgcmVhZC4gIFRoaXMgYWxzbwotICAgICAg ICAgZGlzcGxheXMgdGhlIGZpcnN0IHByb21wdC4gICovCi0gICAgICBsZW5n dGggPSBzdHJsZW4gKGdldF9wcmVmaXggKDApKQotCSsgc3RybGVuIChnZGJf cHJvbXB0KSArIHN0cmxlbiAoZ2V0X3N1ZmZpeCgwKSkgKyAxOwotICAgICAg YV9wcm9tcHQgPSAoY2hhciAqKSBhbGxvY2EgKGxlbmd0aCk7Ci0gICAgICBz dHJjcHkgKGFfcHJvbXB0LCBnZXRfcHJlZml4ICgwKSk7Ci0gICAgICBzdHJj YXQgKGFfcHJvbXB0LCBnZGJfcHJvbXB0KTsKLSAgICAgIHN0cmNhdCAoYV9w cm9tcHQsIGdldF9zdWZmaXggKDApKTsKLSAgICAgIHJsX2NhbGxiYWNrX2hh bmRsZXJfaW5zdGFsbCAoYV9wcm9tcHQsIGlucHV0X2hhbmRsZXIpOwotICAg IH0KLSAgZWxzZQotICAgIGRpc3BsYXlfZ2RiX3Byb21wdCAoMCk7CisgIGRp c3BsYXlfZ2RiX3Byb21wdCAoMCk7CiAKICAgLyogTm93IGl0J3MgdGltZSB0 byBzdGFydCB0aGUgZXZlbnQgbG9vcC4gICovCiAgIHN0YXJ0X2V2ZW50X2xv b3AgKCk7CmRpZmYgLS1naXQgYS9nZGIvdHVpL3R1aS1pbnRlcnAuYyBiL2dk Yi90dWkvdHVpLWludGVycC5jCmluZGV4IDkxOWQxYWMuLjllMzQ0MTIgMTAw NjQ0Ci0tLSBhL2dkYi90dWkvdHVpLWludGVycC5jCisrKyBiL2dkYi90dWkv dHVpLWludGVycC5jCkBAIC0xMzksMjcgKzEzOSw3IEBAIHR1aV9leGVjICh2 b2lkICpkYXRhLCBjb25zdCBjaGFyICpjb21tYW5kX3N0cikKIHN0YXRpYyB2 b2lkCiB0dWlfY29tbWFuZF9sb29wICh2b2lkICpkYXRhKQogewotICAvKiBJ ZiB3ZSBhcmUgdXNpbmcgcmVhZGxpbmUsIHNldCB0aGluZ3MgdXAgYW5kIGRp c3BsYXkgdGhlIGZpcnN0Ci0gICAgIHByb21wdCwgb3RoZXJ3aXNlIGp1c3Qg cHJpbnQgdGhlIHByb21wdC4gICovCi0gIGlmIChhc3luY19jb21tYW5kX2Vk aXRpbmdfcCkKLSAgICB7Ci0gICAgICBpbnQgbGVuZ3RoOwotICAgICAgY2hh ciAqYV9wcm9tcHQ7Ci0gICAgICBjaGFyICpnZGJfcHJvbXB0ID0gZ2V0X3By b21wdCAoMCk7Ci0KLSAgICAgIC8qIFRlbGwgcmVhZGxpbmUgd2hhdCB0aGUg cHJvbXB0IHRvIGRpc3BsYXkgaXMgYW5kIHdoYXQgZnVuY3Rpb24KLSAgICAg ICAgIGl0IHdpbGwgbmVlZCB0byBjYWxsIGFmdGVyIGEgd2hvbGUgbGluZSBp cyByZWFkLiBUaGlzIGFsc28KLSAgICAgICAgIGRpc3BsYXlzIHRoZSBmaXJz dCBwcm9tcHQuICAqLwotICAgICAgbGVuZ3RoID0gc3RybGVuIChnZXRfcHJl Zml4ICgwKSkKLQkrIHN0cmxlbiAoZ2RiX3Byb21wdCkgKyBzdHJsZW4gKGdl dF9zdWZmaXggKDApKSArIDE7Ci0gICAgICBhX3Byb21wdCA9IChjaGFyICop IGFsbG9jYSAobGVuZ3RoKTsKLSAgICAgIHN0cmNweSAoYV9wcm9tcHQsIGdl dF9wcmVmaXggKDApKTsKLSAgICAgIHN0cmNhdCAoYV9wcm9tcHQsIGdkYl9w cm9tcHQpOwotICAgICAgc3RyY2F0IChhX3Byb21wdCwgZ2V0X3N1ZmZpeCAo MCkpOwotICAgICAgcmxfY2FsbGJhY2tfaGFuZGxlcl9pbnN0YWxsIChhX3By b21wdCwgaW5wdXRfaGFuZGxlcik7Ci0gICAgfQotICBlbHNlCi0gICAgZGlz cGxheV9nZGJfcHJvbXB0ICgwKTsKKyAgZGlzcGxheV9nZGJfcHJvbXB0ICgw KTsKIAogICAvKiBMb29wIHVudGlsIHRoZXJlIGlzIG5vdGhpbmcgdG8gZG8u IFRoaXMgaXMgdGhlIGVudHJ5IHBvaW50IHRvIHRoZQogICAgICBldmVudCBs b29wIGVuZ2luZS4gZ2RiX2RvX29uZV9ldmVudCwgY2FsbGVkIHZpYSBjYXRj aF9lcnJvcnMoKQo= --20cf303e9e7a20781c04a949fdf9--