From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29293 invoked by alias); 14 Jan 2009 21:48:31 -0000 Received: (qmail 29285 invoked by uid 22791); 14 Jan 2009 21:48:29 -0000 X-SWARE-Spam-Status: No, hits=-1.1 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_65,J_CHICKENPOX_74,SARE_MSGID_LONG40,SPF_PASS X-Spam-Check-By: sourceware.org Received: from yx-out-1718.google.com (HELO yx-out-1718.google.com) (74.125.44.155) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 14 Jan 2009 21:47:53 +0000 Received: by yx-out-1718.google.com with SMTP id 3so366966yxi.48 for ; Wed, 14 Jan 2009 13:47:50 -0800 (PST) MIME-Version: 1.0 Received: by 10.100.165.5 with SMTP id n5mr607823ane.129.1231969670547; Wed, 14 Jan 2009 13:47:50 -0800 (PST) In-Reply-To: References: Date: Wed, 14 Jan 2009 21:48:00 -0000 Message-ID: Subject: Use external editor in 'commands' command From: Alfredo Ortega To: gdb-patches@sourceware.org Content-Type: multipart/mixed; boundary=0016e640cee89648dc0460784a79 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: 2009-01/txt/msg00335.txt.bz2 --0016e640cee89648dc0460784a79 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-length: 624 Hi all, I have made a small patch to the 'commands' command to allow the use of an external editor to add or modify commands. This is convenient if you are dealing with many commands per breakpoint. The editor follows the behavior of the 'edit' command (/bin/ex by default, or the 'EDITOR' environment variable) Tested on i686-pc-linux-gnu, please tell me what do you think about it. 2009-01-14 Alfredo Ortega * breakpoint.c (commands_command,_initialize_breakpoint): Add the 'edit' keyword to the 'commands' command to allow the use of an external editor to add or modify commands. --0016e640cee89648dc0460784a79 Content-Type: text/x-patch; charset=US-ASCII; name="commands.diff" Content-Disposition: attachment; filename="commands.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_fpyij5y50 Content-length: 4925 LS0tIE9MRC9nZGIvYnJlYWtwb2ludC5jCTIwMDktMDEtMTQgMTc6NDY6MjYu MDAwMDAwMDAwIC0wMjAwCisrKyBORVcvZ2RiL2JyZWFrcG9pbnQuYwkyMDA5 LTAxLTE0IDE5OjMyOjQwLjAwMDAwMDAwMCAtMDIwMApAQCAtNTg1LDE0ICs1 ODUsMjAgQEAgY29uZGl0aW9uX2NvbW1hbmQgKGNoYXIgKmFyZywgaW50IGZy b21fdAogICBlcnJvciAoXygiTm8gYnJlYWtwb2ludCBudW1iZXIgJWQuIiks IGJudW0pOwogfQogCisjZGVmaW5lIENPTU1BTkRTX0VEQ09NTUFORCAiZWRp dCIKKwogc3RhdGljIHZvaWQKIGNvbW1hbmRzX2NvbW1hbmQgKGNoYXIgKmFy ZywgaW50IGZyb21fdHR5KQogewogICBzdHJ1Y3QgYnJlYWtwb2ludCAqYjsK ICAgY2hhciAqcDsKLSAgaW50IGJudW07CisgIGludCBibnVtLGZzaXplOwog ICBzdHJ1Y3QgY29tbWFuZF9saW5lICpsOwotCisgIGNoYXIgdml0bXBbNTBd OworICBjaGFyIGNtZGxpbmVbMTAwXTsKKyAgRklMRSAqdG1wc3RyZWFtPU5V TEw7CisgIGNoYXIgKmVkaXRvcjsKKyAgCiAgIC8qIElmIHdlIGFsbG93ZWQg dGhpcywgd2Ugd291bGQgaGF2ZSBwcm9ibGVtcyB3aXRoIHdoZW4gdG8KICAg ICAgZnJlZSB0aGUgc3RvcmFnZSwgaWYgd2UgY2hhbmdlIHRoZSBjb21tYW5k cyBjdXJyZW50bHkKICAgICAgYmVpbmcgcmVhZCBmcm9tLiAgKi8KQEAgLTYw Miw2ICs2MDgsNDEgQEAgY29tbWFuZHNfY29tbWFuZCAoY2hhciAqYXJnLCBp bnQgZnJvbV90dAogCiAgIHAgPSBhcmc7CiAgIGJudW0gPSBnZXRfbnVtYmVy ICgmcCk7CisgIHZpdG1wWzBdPTA7CisgIC8qIEVkaXQgY29tbWFuZHMgd2l0 aCBleHRlcm5hbCBlZGl0b3IgKi8KKyAgaWYgKCFzdHJjbXAoQ09NTUFORFNf RURDT01NQU5ELHApKQl7CisJLyogR2VuZXJhdGVzIHRoZSB0ZW1wb3JhbCBm aWxlIG5hbWUqLworCS8qIHZpdG1wID0gdGVtcG5hbShOVUxMLCIuZ2RiIik7 IHRoaXMgaXMgbW9yZSBzZWN1cmUgYWNjb3JkaW5nIHRvIG1hbiBta3N0ZW1w LCBidXQgZ2NjIGNvbXBsYWlucy4uLiAqLworCXA9TlVMTDsKKwlzdHJjcHko dml0bXAsIi90bXAvLmdkYlhYWFhYWCIpOworCWlmIChta3N0ZW1wKHZpdG1w KTwwKSByZXR1cm47CisJQUxMX0JSRUFLUE9JTlRTIChiKQorCQlpZiAoYi0+ bnVtYmVyID09IGJudW0pCisJCQl7CisJCQlpZiAoJmItPmNvbW1hbmRzKQl7 CisJCQkJLyogY29tbWFuZHMgZXhpc3RzLCBtdXN0IGR1bXAgdGhlbSB0byB0 aGUgdGVtcG9yYWwgZmlsZSAqLworCQkJCXRtcHN0cmVhbT1mb3Blbih2aXRt cCwidyIpOworCQkJCWwgPSBiLT5jb21tYW5kczsKKwkJCQl3aGlsZShsKQl7 CisJCQkJCWZzaXplPTA7CisJCQkJCWZzaXplKz1md3JpdGUobC0+bGluZSwx LHN0cmxlbihsLT5saW5lKSx0bXBzdHJlYW0pOworCQkJCQlmc2l6ZSs9Zndy aXRlKCJcbiIsMSxzdHJsZW4oIlxuIiksdG1wc3RyZWFtKTsKKwkJCQkJaWYg KGZzaXplPHN0cmxlbihsLT5saW5lKSsxKSB7CisJCQkJCQlmY2xvc2UodG1w c3RyZWFtKTsKKwkJCQkJCXVubGluayh2aXRtcCk7CisJCQkJCQlyZXR1cm47 CisJCQkJCQl9OworCQkJCQlsID0gbC0+bmV4dDsKKwkJCQkJfQorCQkJCWZj bG9zZSh0bXBzdHJlYW0pOworCQkJCX0KKwkJCS8qIEVkaXQgdGhlIGZpbGUg Ki8KKwkJCWlmICgoZWRpdG9yID0gKGNoYXIgKikgZ2V0ZW52ICgiRURJVE9S IikpID09IE5VTEwpCisJCQkJZWRpdG9yID0gIi9iaW4vZXgiOworCQkJc25w cmludGYoY21kbGluZSxzaXplb2YoY21kbGluZSksIiVzIFwiJXNcIiIsZWRp dG9yLHZpdG1wKTsKKwkJCWlmIChzeXN0ZW0oY21kbGluZSk8MCkgcmV0dXJu OworICAgIAkJCX0KKwl9CiAKICAgaWYgKHAgJiYgKnApCiAgICAgZXJyb3Ig KF8oIlVuZXhwZWN0ZWQgZXh0cmEgYXJndW1lbnRzIGZvbGxvd2luZyBicmVh a3BvaW50IG51bWJlci4iKSk7CkBAIC02MDksMTcgKzY1MCwzMSBAQCBjb21t YW5kc19jb21tYW5kIChjaGFyICphcmcsIGludCBmcm9tX3R0CiAgIEFMTF9C UkVBS1BPSU5UUyAoYikKICAgICBpZiAoYi0+bnVtYmVyID09IGJudW0pCiAg ICAgICB7Ci0JY2hhciAqdG1wYnVmID0geHN0cnByaW50ZiAoIlR5cGUgY29t bWFuZHMgZm9yIHdoZW4gYnJlYWtwb2ludCAlZCBpcyBoaXQsIG9uZSBwZXIg bGluZS4iLCAKKwlpZih2aXRtcFswXSkJeworCQkvKiByZWRpcmVjdCBpbnN0 cmVhbSAqLworCQl0bXBzdHJlYW09aW5zdHJlYW07CisJCWluc3RyZWFtPWZv cGVuKHZpdG1wLCJyIik7CisJCWwgPSByZWFkX2NvbW1hbmRfbGluZXMgKE5V TEwsIGZyb21fdHR5LCAxKTsKKwkJfQorCWVsc2UJeworCQljaGFyICp0bXBi dWYgPSB4c3RycHJpbnRmICgiVHlwZSBjb21tYW5kcyBmb3Igd2hlbiBicmVh a3BvaW50ICVkIGlzIGhpdCwgb25lIHBlciBsaW5lLiIsIAogCQkJCSBibnVt KTsKLQlzdHJ1Y3QgY2xlYW51cCAqY2xlYW51cHMgPSBtYWtlX2NsZWFudXAg KHhmcmVlLCB0bXBidWYpOwotCWwgPSByZWFkX2NvbW1hbmRfbGluZXMgKHRt cGJ1ZiwgZnJvbV90dHksIDEpOwotCWRvX2NsZWFudXBzIChjbGVhbnVwcyk7 CisJCXN0cnVjdCBjbGVhbnVwICpjbGVhbnVwcyA9IG1ha2VfY2xlYW51cCAo eGZyZWUsIHRtcGJ1Zik7CisJCWwgPSByZWFkX2NvbW1hbmRfbGluZXMgKHRt cGJ1ZiwgZnJvbV90dHksIDEpOworCQlkb19jbGVhbnVwcyAoY2xlYW51cHMp OworCQl9CiAJZnJlZV9jb21tYW5kX2xpbmVzICgmYi0+Y29tbWFuZHMpOwog CWItPmNvbW1hbmRzID0gbDsKIAlicmVha3BvaW50c19jaGFuZ2VkICgpOwog CW9ic2VydmVyX25vdGlmeV9icmVha3BvaW50X21vZGlmaWVkIChiLT5udW1i ZXIpOworCWlmKHZpdG1wWzBdKQl7CisJCS8qIHJlc3RvcmUgaW5zdHJlYW0g Ki8KKwkJaW5zdHJlYW09dG1wc3RyZWFtOworCQkvKiBlcmFzZSB0ZW1wb3Jh bCBmaWxlICovCisJCXVubGluayh2aXRtcCk7CisJCX0KIAlyZXR1cm47Ci0g ICAgfQorICAgICAgIH0KICAgZXJyb3IgKF8oIk5vIGJyZWFrcG9pbnQgbnVt YmVyICVkLiIpLCBibnVtKTsKIH0KIApAQCAtODEwMyw2ICs4MTU4LDkgQEAg VXNhZ2UgaXMgYGlnbm9yZSBOIENPVU5UJy4iKSk7CiAgIGFkZF9jb20gKCJj b21tYW5kcyIsIGNsYXNzX2JyZWFrcG9pbnQsIGNvbW1hbmRzX2NvbW1hbmQs IF8oIlwKIFNldCBjb21tYW5kcyB0byBiZSBleGVjdXRlZCB3aGVuIGEgYnJl YWtwb2ludCBpcyBoaXQuXG5cCiBHaXZlIGJyZWFrcG9pbnQgbnVtYmVyIGFz IGFyZ3VtZW50IGFmdGVyIFwiY29tbWFuZHNcIi5cblwKK0FmdGVyIHRoZSBj b21tYW5kIG51bWJlciB5b3UgY2FuIGVudGVyIHRoZSBgZWRpdCcga2V5d29y ZCwgYW5kIHRoZW4geW91IGNhbiBcblwKK3VzZSB0aGUgZXh0ZXJuYWwgZWRp dG9yIHRvIGFkZCBvciBtb2RpZnkgY29tbWFuZHMuXG5cCitVc2VzIEVESVRP UiBlbnZpcm9ubWVudCB2YXJpYWJsZSBjb250ZW50cyBhcyBlZGl0b3IgKG9y IGV4IGFzIGRlZmF1bHQpLlxuXAogV2l0aCBubyBhcmd1bWVudCwgdGhlIHRh cmdldGVkIGJyZWFrcG9pbnQgaXMgdGhlIGxhc3Qgb25lIHNldC5cblwKIFRo ZSBjb21tYW5kcyB0aGVtc2VsdmVzIGZvbGxvdyBzdGFydGluZyBvbiB0aGUg bmV4dCBsaW5lLlxuXAogVHlwZSBhIGxpbmUgY29udGFpbmluZyBcImVuZFwi IHRvIGluZGljYXRlIHRoZSBlbmQgb2YgdGhlbS5cblwK --0016e640cee89648dc0460784a79--