Bug 100771 - port submit (ports-mgmt/porttools) cannot parse multiple options
Summary: port submit (ports-mgmt/porttools) cannot parse multiple options
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Dmitry Marakasov
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-07-24 11:20 UTC by HASHI Hiroaki
Modified: 2008-09-23 14:40 UTC (History)
0 users

See Also:


Attachments
file.diff (1.79 KB, patch)
2006-07-24 11:20 UTC, HASHI Hiroaki
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description HASHI Hiroaki 2006-07-24 11:20:20 UTC
	port submit(devel/porttools) cannot parse multible options.

Fix: A parse code of getopt's result is wrong.
	Is this a script's problem? (or /bin/sh's problem?)

How-To-Repeat: 
	tomba# popd
	/usr/ports/mail/p5-Email-MIME-Creator 
	tomba# port submit -m update -d .orig
	===> Validating port with portlint
	WARN: no CVS directories. Use -N to check a new port.
	0 fatal errors and 1 warning found.
	Original version does not exist at /usr/ports/mail/p5-Email-MIME-Creator--
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2006-07-24 11:20:28 UTC
Responsible Changed
From-To: freebsd-ports-bugs->sergei

Over to maintainer
Comment 2 Mark Linimon freebsd_committer freebsd_triage 2008-07-27 06:59:48 UTC
Responsible Changed
From-To: sergei->freebsd-ports-bugs

Maintainer was reset.
Comment 3 Dmitry Marakasov freebsd_committer freebsd_triage 2008-09-12 17:33:41 UTC
Responsible Changed
From-To: freebsd-ports-bugs->amdmi3

I'll take it.
Comment 4 Dmitry Marakasov 2008-09-12 18:11:06 UTC
> Synopsis: port submit (ports-mgmt/porttools) cannot parse multiple options
> 
> http://www.freebsd.org/cgi/query-pr.cgi?pr=100771
Sorry for the delay :))

Does the patch attached work for you?

--- porttools.patch begins here ---
Index: Makefile
===================================================================
RCS file: /home/pcvs/ports/ports-mgmt/porttools/Makefile,v
retrieving revision 1.21
diff -u -r1.21 Makefile
--- Makefile	27 Jul 2008 07:40:01 -0000	1.21
+++ Makefile	12 Sep 2008 17:09:51 -0000
@@ -7,7 +7,7 @@
 
 PORTNAME=	porttools
 PORTVERSION=	0.77
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	ports-mgmt
 MASTER_SITES=	SF
 
Index: files/patch-arguments-parsing
===================================================================
RCS file: files/patch-arguments-parsing
diff -N files/patch-arguments-parsing
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ files/patch-arguments-parsing	12 Sep 2008 17:09:51 -0000
@@ -0,0 +1,90 @@
+diff -ruN cmd_commit.in.orig cmd_commit.in
+--- cmd_commit.in.orig	2006-05-06 15:31:58.000000000 +0400
++++ cmd_commit.in	2008-09-12 21:02:21.000000000 +0400
+@@ -33,8 +33,9 @@
+ fi
+ 
+ set -- $ARGS
+-for i 
+-do
++while [ x"" != x"--" -a x"" != x"" ]
++do
++	i=$1
+ 	case "$i" in
+ 	# help
+ 	-h)
+diff -ruN cmd_diff.in.orig cmd_diff.in
+--- cmd_diff.in.orig	2006-05-06 15:31:58.000000000 +0400
++++ cmd_diff.in	2008-09-12 21:02:21.000000000 +0400
+@@ -37,8 +37,9 @@
+ fi
+ 
+ set -- $ARGS
+-for i 
+-do
++while [ x"" != x"--" -a x"" != x"" ]
++do
++	i=$1
+ 	case "$i" in
+ 	# help
+ 	-h)
+diff -ruN cmd_install.in.orig cmd_install.in
+--- cmd_install.in.orig	2006-05-06 15:31:58.000000000 +0400
++++ cmd_install.in	2008-09-12 21:02:21.000000000 +0400
+@@ -36,8 +36,9 @@
+ fi
+ 
+ set -- $ARGS
+-for i 
+-do
++while [ x"" != x"--" -a x"" != x"" ]
++do
++	i=$1
+ 	case "$i" in
+ 	# help
+ 	-h)
+diff -ruN cmd_submit.in.orig cmd_submit.in
+--- cmd_submit.in.orig	2006-05-06 15:31:58.000000000 +0400
++++ cmd_submit.in	2008-09-12 21:02:21.000000000 +0400
+@@ -52,8 +52,9 @@
+ fi
+ 
+ set -- $ARGS
+-for i 
+-do
++while [ x"" != x"--" -a x"" != x"" ]
++do
++	i=$1
+ 	case "$i" in
+ 	# help
+ 	-h)
+diff -ruN cmd_test.in.orig cmd_test.in
+--- cmd_test.in.orig	2006-05-06 15:31:58.000000000 +0400
++++ cmd_test.in	2008-09-12 21:02:21.000000000 +0400
+@@ -44,8 +44,9 @@
+ fi
+ 
+ set -- $ARGS
+-for i 
+-do
++while [ x"" != x"--" -a x"" != x"" ]
++do
++	i=$1
+ 	case "$i" in
+ 	-h)	# help
+ 		usage
+diff -ruN cmd_upgrade.in.orig cmd_upgrade.in
+--- cmd_upgrade.in.orig	2006-05-06 15:31:58.000000000 +0400
++++ cmd_upgrade.in	2008-09-12 21:02:21.000000000 +0400
+@@ -36,8 +36,9 @@
+ fi
+ 
+ set -- $ARGS
+-for i 
+-do
++while [ x"" != x"--" -a x"" != x"" ]
++do
++	i=$1
+ 	case "$i" in
+ 	# help
+ 	-h)
--- porttools.patch ends here ---

-- 
Dmitry Marakasov   .   55B5 0596 FF1E 8D84 5F56  9510 D35A 80DD F9D2 F77D
amdmi3@amdmi3.ru  ..:  jabber: amdmi3@jabber.ru    http://www.amdmi3.ru
Comment 5 Dmitry Marakasov freebsd_committer freebsd_triage 2008-09-23 14:36:28 UTC
State Changed
From-To: open->closed

Committed, with minor changes. Thanks!
Comment 6 dfilter service freebsd_committer freebsd_triage 2008-09-23 14:36:29 UTC
amdmi3      2008-09-23 13:36:17 UTC

  FreeBSD ports repository

  Modified files:
    ports-mgmt/porttools Makefile 
  Added files:
    ports-mgmt/porttools/files patch-arguments-parsing 
  Log:
  - Fix commandline arguments handling for some cases (actualy any case when two or more flags are used simultaneously like `port submit -m update -d .orig`)
  
  PR:             100771
  Submitted by:   HASHI Hiroaki <hashiz at tomba dot meridiani dot jp>
  
  Revision  Changes    Path
  1.22      +1 -1      ports/ports-mgmt/porttools/Makefile
  1.1       +90 -0     ports/ports-mgmt/porttools/files/patch-arguments-parsing (new)
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"