threads / patch / 1986

patchFix cg-admin-uncommit

Subject: [PATCH] Fix cg-admin-uncommit

## tl;dr

2 messages between Sep 30, 2005 and Oct 11, 2005. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Paolo 'Blaisorblade' Giarrusso· Sep 30, 2005, 18:35 UTC · lore
From: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>

It uses $1 rather than ${ARGS[0]}, which breaks when optparse found some options, i.e. with cg-admin-uncommit -t (cg-object-id -c -t is not nice).

Please, document optparse to explain this. It's absolutely non-obvious, and when I first hit this I thought optparse was buggy but couldn't make my way to the fix.

Both because I was using cogito rather than debugging it, and even considering the obfuscation level, but above all I was looking for a call to shift in optshift and didn't find it. Now I understood the thing I pity myself, though.

Btw, why doesn't optparse consume all the cmd arguments via shift, making thus sure that $1 never works at all?

Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
---
 cg-admin-uncommit |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Show changes to cg-admin-uncommit +1 −1
diff --git a/cg-admin-uncommit b/cg-admin-uncommit
--- a/cg-admin-uncommit
+++ b/cg-admin-uncommit
@@ -47,7 +47,7 @@ done
 
 base=$(cg-object-id -c) || exit 1
 
-commit=$(cg-object-id -c "$1") || exit 1
+commit=$(cg-object-id -c "${ARGS[0]}") || exit 1
 git-rev-list $base | grep -q $commit || \
 	die "$commit: not an ancestor of HEAD"
 
Petr Baudis· Oct 11, 2005, 23:16 UTC · re: Paolo 'Blaisorblade' Giarrusso · lore

Re: [PATCH] Fix cg-admin-uncommit

Dear diary, on Fri, Sep 30, 2005 at 08:35:46PM CEST, I got a letter where Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> told me that...

> Btw, why doesn't optparse consume all the cmd arguments via shift, making thus
> sure that $1 never works at all?

I did something hopefully equivalent, thanks for the idea (and for the patch as well :-).

-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
VI has two modes: the one in which it beeps and the one in which
it doesn't.

← back to recent threads