mirror of
https://git.yoctoproject.org/poky
synced 2026-09-14 21:49:33 +02:00
packages: Separate out most of the remaining packages into recipes
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
This commit is contained in:
292
meta/recipes-extended/findutils/findutils-4.4.2/02-28824.patch
Normal file
292
meta/recipes-extended/findutils/findutils-4.4.2/02-28824.patch
Normal file
@@ -0,0 +1,292 @@
|
||||
commit 76ed377d6d3e4a83a00cabd401f751b37ecd1e7b
|
||||
Author: James Youngman <jay@gnu.org>
|
||||
Date: Sat Feb 20 13:11:45 2010 +0000
|
||||
|
||||
Fix Savannah bug# 28824: "-ctime x" yields "missing argument to `-ctime'".
|
||||
|
||||
* find/parser.c (parse_fls): If the argument is invalid, reverse
|
||||
the change that collect_arg() made to *arg_ptr (that is, don't
|
||||
consume the argument).
|
||||
(parse_fprint0): Likewise.
|
||||
(parse_gid): Likewise.
|
||||
(parse_group): Likewise.
|
||||
(parse_inum): Likewise.
|
||||
(parse_links): Likewise.
|
||||
(do_parse_xmin): Likewise.
|
||||
(parse_name): Likewise.
|
||||
(parse_printf): Likewise.
|
||||
(parse_uid): Likewise.
|
||||
(parse_used): Likewise.
|
||||
(parse_time): Likewise.
|
||||
|
||||
Signed-off-by: James Youngman <jay@gnu.org>
|
||||
|
||||
diff --git a/ChangeLog b/ChangeLog
|
||||
index d0ce1fe..13539a4 100644
|
||||
--- a/ChangeLog
|
||||
+++ b/ChangeLog
|
||||
@@ -1,0 +1,19 @@
|
||||
+2010-02-20 James Youngman <jay@gnu.org>
|
||||
+
|
||||
+ Fix Savannah bug# 28824: "-ctime x" yields "missing argument to
|
||||
+ `-ctime'".
|
||||
+ * find/parser.c (parse_fls): If the argument is invalid, reverse
|
||||
+ the change that collect_arg() made to *arg_ptr (that is, don't
|
||||
+ consume the argument).
|
||||
+ (parse_fprint0): Likewise.
|
||||
+ (parse_gid): Likewise.
|
||||
+ (parse_group): Likewise.
|
||||
+ (parse_inum): Likewise.
|
||||
+ (parse_links): Likewise.
|
||||
+ (do_parse_xmin): Likewise.
|
||||
+ (parse_name): Likewise.
|
||||
+ (parse_printf): Likewise.
|
||||
+ (parse_uid): Likewise.
|
||||
+ (parse_used): Likewise.
|
||||
+ (parse_time): Likewise.
|
||||
+
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 5394311..4e910df 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -4,5 +4,8 @@ GNU findutils NEWS - User visible changes. -*- outline -*- (allout)
|
||||
|
||||
** Bug Fixes
|
||||
|
||||
+#28824: Corrected error message for "-ctime x".
|
||||
+ Likewise for -gid, -inum, -links, -mmin, -cmin, -amin,
|
||||
+ -uid, -used, -atime, -mtime, -ctime.
|
||||
#26537: find -prune now makes sure it has valid stat() information.
|
||||
|
||||
diff --git a/find/parser.c b/find/parser.c
|
||||
index 2e6b989..08758ee 100644
|
||||
--- a/find/parser.c
|
||||
+++ b/find/parser.c
|
||||
@@ -886,8 +886,14 @@ static boolean
|
||||
parse_fls (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
{
|
||||
const char *filename;
|
||||
- return collect_arg(argv, arg_ptr, &filename)
|
||||
- && insert_fls(entry, filename);
|
||||
+ if (collect_arg(argv, arg_ptr, &filename))
|
||||
+ {
|
||||
+ if (insert_fls(entry, filename))
|
||||
+ return true;
|
||||
+ else
|
||||
+ --*arg_ptr; /* don't consume the invalid arg. */
|
||||
+ }
|
||||
+ return false;
|
||||
}
|
||||
|
||||
static boolean
|
||||
@@ -937,9 +943,13 @@ parse_fprint0 (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
{
|
||||
const char *filename;
|
||||
if (collect_arg(argv, arg_ptr, &filename))
|
||||
- return insert_fprint(entry, filename);
|
||||
- else
|
||||
- return false;
|
||||
+ {
|
||||
+ if (insert_fprint(entry, filename))
|
||||
+ return true;
|
||||
+ else
|
||||
+ --*arg_ptr; /* don't consume the bad arg. */
|
||||
+ }
|
||||
+ return false;
|
||||
}
|
||||
|
||||
static float estimate_fstype_success_rate(const char *fsname)
|
||||
@@ -993,6 +1003,7 @@ parse_gid (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
}
|
||||
else
|
||||
{
|
||||
+ --*arg_ptr; /* don't consume the invalid argument. */
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -1049,6 +1060,7 @@ static boolean
|
||||
parse_group (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
{
|
||||
const char *groupname;
|
||||
+ const int saved_argc = *arg_ptr;
|
||||
|
||||
if (collect_arg(argv, arg_ptr, &groupname))
|
||||
{
|
||||
@@ -1077,6 +1089,7 @@ parse_group (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
"because it has the unexpected suffix %s"),
|
||||
quotearg_n_style(0, options.err_quoting_style, groupname),
|
||||
quotearg_n_style(1, options.err_quoting_style, groupname+gid_len));
|
||||
+ *arg_ptr = saved_argc; /* don't consume the invalid argument. */
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -1092,6 +1105,7 @@ parse_group (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
{
|
||||
error(1, 0, _("argument to -group is empty, but should be a group name"));
|
||||
}
|
||||
+ *arg_ptr = saved_argc; /* don't consume the invalid argument. */
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -1256,6 +1270,7 @@ parse_inum (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
}
|
||||
else
|
||||
{
|
||||
+ --*arg_ptr; /* don't consume the invalid argument. */
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -1310,6 +1325,7 @@ parse_links (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
}
|
||||
else
|
||||
{
|
||||
+ --*arg_ptr; /* don't consume the invalid argument. */
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -1358,6 +1374,7 @@ insert_depthspec(const struct parser_table* entry, char **argv, int *arg_ptr,
|
||||
error(1, 0, _("Expected a positive decimal integer argument to %s, but got %s"),
|
||||
predicate,
|
||||
quotearg_n_style(0, options.err_quoting_style, depthstr));
|
||||
+ /* NOTREACHED */
|
||||
return false;
|
||||
}
|
||||
/* missing argument */
|
||||
@@ -1385,6 +1402,7 @@ do_parse_xmin (const struct parser_table* entry,
|
||||
enum xval xv)
|
||||
{
|
||||
const char *minutes;
|
||||
+ const int saved_argc = *arg_ptr;
|
||||
|
||||
if (collect_arg(argv, arg_ptr, &minutes))
|
||||
{
|
||||
@@ -1401,6 +1419,11 @@ do_parse_xmin (const struct parser_table* entry,
|
||||
our_pred->est_success_rate = estimate_timestamp_success_rate(tval.ts.tv_sec);
|
||||
return true;
|
||||
}
|
||||
+ else
|
||||
+ {
|
||||
+ /* Don't consume the invalid argument. */
|
||||
+ *arg_ptr = saved_argc;
|
||||
+ }
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -1427,6 +1450,8 @@ static boolean
|
||||
parse_name (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
{
|
||||
const char *name;
|
||||
+ const int saved_argc = *arg_ptr;
|
||||
+
|
||||
if (collect_arg(argv, arg_ptr, &name))
|
||||
{
|
||||
fnmatch_sanitycheck();
|
||||
@@ -1438,6 +1463,10 @@ parse_name (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
our_pred->est_success_rate = estimate_pattern_match_rate(name, 0);
|
||||
return true;
|
||||
}
|
||||
+ else
|
||||
+ {
|
||||
+ *arg_ptr = saved_argc; /* don't consume the invalid argument. */
|
||||
+ }
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -1954,11 +1983,21 @@ static boolean
|
||||
parse_printf (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
{
|
||||
const char *format;
|
||||
+ const int saved_argc = *arg_ptr;
|
||||
+
|
||||
if (collect_arg(argv, arg_ptr, &format))
|
||||
{
|
||||
struct format_val fmt;
|
||||
open_stdout(&fmt);
|
||||
- return insert_fprintf (&fmt, entry, pred_fprintf, format);
|
||||
+ if (insert_fprintf (&fmt, entry, pred_fprintf, format))
|
||||
+ {
|
||||
+ return true;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ *arg_ptr = saved_argc; /* don't consume the invalid argument. */
|
||||
+ return false;
|
||||
+ }
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -1967,15 +2006,21 @@ static boolean
|
||||
parse_fprintf (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
{
|
||||
const char *format, *filename;
|
||||
+ int saved_argc = *arg_ptr;
|
||||
+
|
||||
if (collect_arg(argv, arg_ptr, &filename))
|
||||
{
|
||||
if (collect_arg(argv, arg_ptr, &format))
|
||||
{
|
||||
struct format_val fmt;
|
||||
open_output_file (filename, &fmt);
|
||||
- return insert_fprintf (&fmt, entry, pred_fprintf, format);
|
||||
+ saved_argc = *arg_ptr;
|
||||
+
|
||||
+ if (insert_fprintf (&fmt, entry, pred_fprintf, format))
|
||||
+ return true;
|
||||
}
|
||||
}
|
||||
+ *arg_ptr = saved_argc; /* don't consume the invalid argument. */
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -2405,6 +2450,7 @@ parse_uid (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
}
|
||||
else
|
||||
{
|
||||
+ --*arg_ptr; /* don't consume the invalid argument. */
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -2431,6 +2477,7 @@ parse_used (const struct parser_table* entry, char **argv, int *arg_ptr)
|
||||
else
|
||||
{
|
||||
error(1, 0, _("Invalid argument %s to -used"), offset_str);
|
||||
+ /*NOTREACHED*/
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -2610,6 +2657,7 @@ insert_type (char **argv, int *arg_ptr,
|
||||
if (strlen(typeletter) != 1u)
|
||||
{
|
||||
error(1, 0, _("Arguments to -type should contain only one letter"));
|
||||
+ /*NOTREACHED*/
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -2657,6 +2705,7 @@ insert_type (char **argv, int *arg_ptr,
|
||||
#endif
|
||||
default: /* None of the above ... nuke 'em. */
|
||||
error(1, 0, _("Unknown argument to -type: %c"), (*typeletter));
|
||||
+ /*NOTREACHED*/
|
||||
return false;
|
||||
}
|
||||
our_pred = insert_primary_withpred (entry, which_pred, typeletter);
|
||||
@@ -3349,6 +3398,7 @@ parse_time (const struct parser_table* entry, char *argv[], int *arg_ptr)
|
||||
const char *errmsg = "arithmetic overflow while converting %s "
|
||||
"days to a number of seconds";
|
||||
struct timespec origin;
|
||||
+ const int saved_argc = *arg_ptr;
|
||||
|
||||
if (!collect_arg(argv, arg_ptr, &timearg))
|
||||
return false;
|
||||
@@ -3381,7 +3431,10 @@ parse_time (const struct parser_table* entry, char *argv[], int *arg_ptr)
|
||||
timearg = orig_timearg;
|
||||
|
||||
if (!get_relative_timestamp(timearg, &tval, origin, DAYSECS, errmsg))
|
||||
- return false;
|
||||
+ {
|
||||
+ *arg_ptr = saved_argc; /* don't consume the invalid argument */
|
||||
+ return false;
|
||||
+ }
|
||||
|
||||
our_pred = insert_primary (entry, orig_timearg);
|
||||
our_pred->args.reftime = tval;
|
||||
Reference in New Issue
Block a user