From mboxrd@z Thu Jan 1 00:00:00 1970 From: Per Cederqvist Subject: [GUILT v2 20/29] "guilt graph": Handle patch names containing quotes. Date: Tue, 13 May 2014 22:30:56 +0200 Message-ID: <1400013065-27919-21-git-send-email-cederp@opera.com> References: <1400013065-27919-1-git-send-email-cederp@opera.com> Cc: git@vger.kernel.org, Per Cederqvist To: Jeff Sipek X-From: git-owner@vger.kernel.org Tue May 13 22:37:20 2014 Return-path: Envelope-to: gcvg-git-2@plane.gmane.org Received: from vger.kernel.org ([209.132.180.67]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1WkJRu-0007LP-5o for gcvg-git-2@plane.gmane.org; Tue, 13 May 2014 22:37:18 +0200 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755173AbaEMUhO (ORCPT ); Tue, 13 May 2014 16:37:14 -0400 Received: from mail-la0-f46.google.com ([209.85.215.46]:40514 "EHLO mail-la0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755172AbaEMUhK (ORCPT ); Tue, 13 May 2014 16:37:10 -0400 Received: by mail-la0-f46.google.com with SMTP id ec20so712293lab.19 for ; Tue, 13 May 2014 13:37:09 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=QdzgmfeEWUlS59siaoVNwLvsMnwt3KP4p5W1DRePJnU=; b=InUZjj86Ne9FkbRfxPkRCqPu17wiA5RaAIO7RbQ/JYYLNg0Y7zPlYWrqqnImSAiYdm RllE/xBiQDrzAz2edjDmy+zi2xyL14M8QDmUQCt++TY+ZiNTuRz1geel3yVmeCAeVqo1 9nP/P3WTC1vgjdm1bUwapAujo9MhBuM72pqBeQxbtQRdfiQ2rsHEUEABVYFoQ4uDMsdn mIrwLjHAAwHPDDmgXWr7Tj0yRh3s2x5oJZ28XUN2IOEqaIoU2Cu3JRVRq0jkI0vFCNtS xhdhJAqM0QEhgRNnvldJgxufzTjIY7UaNvwZadGswlD2Yb2egSqcX66rfb6eNcLYaWCi VBEg== X-Gm-Message-State: ALoCoQlxKpFROWU27ILBwH44ASxVXqEOQefeJq88rqcuDpIXSQRZq+h+hyDs0mmwKsAL51tzU7JU X-Received: by 10.152.4.1 with SMTP id g1mr19434979lag.20.1400013429152; Tue, 13 May 2014 13:37:09 -0700 (PDT) Received: from dualla.linkoping.osa (ip-200.t2.se.opera.com. [212.247.211.200]) by mx.google.com with ESMTPSA id m2sm11431763lbp.31.2014.05.13.13.37.07 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 13 May 2014 13:37:08 -0700 (PDT) X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1400013065-27919-1-git-send-email-cederp@opera.com> Sender: git-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Archived-At: Quote quotes with a backslash in the "guilt graph" output. Otherwise, the "dot" file could contain syntax errors. Added a test case. Signed-off-by: Per Cederqvist --- guilt-graph | 2 ++ regression/t-033.out | 22 ++++++++++++++++++++++ regression/t-033.sh | 9 +++++++++ 3 files changed, 33 insertions(+) diff --git a/guilt-graph b/guilt-graph index 924a63e..0857e0d 100755 --- a/guilt-graph +++ b/guilt-graph @@ -57,6 +57,8 @@ while [ "$current" != "$base" ]; do }"` [ -z "$pname" ] && pname="?" + pname="`printf \"%s\" \"$pname\" | sed 's/\"/\\\\\"/g'`" + disp "# checking rev $current" disp " \"$current\" [label=\"$pname\"]" diff --git a/regression/t-033.out b/regression/t-033.out index 3d1c61f..c120d4f 100644 --- a/regression/t-033.out +++ b/regression/t-033.out @@ -66,3 +66,25 @@ digraph G { "ff2775f8d1dc753f635830adcc3a067e0b681e2d" [label="a.patch"] "891bc14b5603474c9743fd04f3da888644413dc5" -> "ff2775f8d1dc753f635830adcc3a067e0b681e2d"; // ? } +% guilt new a-"better&quicker'-patch.patch +% git add file.txt +% guilt refresh +Patch a-"better&quicker'-patch.patch refreshed +% guilt pop +Now at c.patch. +% guilt push +Applying patch..a-"better&quicker'-patch.patch +Patch applied. +% guilt graph +digraph G { +# checking rev bc7df666a646739eaf559af23cab72f2bfd01f0e + "bc7df666a646739eaf559af23cab72f2bfd01f0e" [label="a-\"better&quicker'-patch.patch"] +# checking rev 891bc14b5603474c9743fd04f3da888644413dc5 + "891bc14b5603474c9743fd04f3da888644413dc5" [label="c.patch"] + "bc7df666a646739eaf559af23cab72f2bfd01f0e" -> "891bc14b5603474c9743fd04f3da888644413dc5"; // ? +# checking rev c7014443c33d2b0237293687ceb9cbd38313df65 + "c7014443c33d2b0237293687ceb9cbd38313df65" [label="b.patch"] +# checking rev ff2775f8d1dc753f635830adcc3a067e0b681e2d + "ff2775f8d1dc753f635830adcc3a067e0b681e2d" [label="a.patch"] + "891bc14b5603474c9743fd04f3da888644413dc5" -> "ff2775f8d1dc753f635830adcc3a067e0b681e2d"; // ? +} diff --git a/regression/t-033.sh b/regression/t-033.sh index fac081e..9fe1827 100755 --- a/regression/t-033.sh +++ b/regression/t-033.sh @@ -50,3 +50,12 @@ cmd git add file.txt cmd guilt refresh fixup_time_info c.patch cmd guilt graph + +# A patch name that contains funky characters, including unbalanced +# quotes. +cmd guilt new "a-\"better&quicker'-patch.patch" +cmd echo d >> file.txt +cmd git add file.txt +cmd guilt refresh +fixup_time_info "a-\"better&quicker'-patch.patch" +cmd guilt graph -- 1.8.3.1